41f982:	8d 45 f8             	lea    -0x8(%ebp),%eax
41f985:	6a 01                	push   $0x1
41f987:	50                   	push   %eax
41f988:	e8 75 27 00 00       	call   0x422102
41f98d:	59                   	pop    %ecx
41f98e:	59                   	pop    %ecx
41f98f:	50                   	push   %eax
41f990:	56                   	push   %esi
41f991:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
41f994:	e8 7a d5 fe ff       	call   0x40cf13
41f999:	68 a8 15 4b 00       	push   $0x4b15a8
41f99e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41f9a1:	50                   	push   %eax
41f9a2:	eb 09                	jmp    0x41f9ad
41f9a4:	5e                   	pop    %esi
41f9a5:	c9                   	leave
41f9a6:	c2 08 00             	ret    $0x8
41f9a9:	6a 00                	push   $0x0
41f9ab:	6a 00                	push   $0x0
41f9ad:	e8 10 48 02 00       	call   0x4441c2
41f9b2:	cc                   	int3
41f9b3:	55                   	push   %ebp
41f9b4:	8b ec                	mov    %esp,%ebp
41f9b6:	51                   	push   %ecx
41f9b7:	0f bd 4d 0c          	bsr    0xc(%ebp),%ecx
41f9bb:	74 04                	je     0x41f9c1
41f9bd:	6a 1f                	push   $0x1f
41f9bf:	eb 06                	jmp    0x41f9c7
41f9c1:	0f bd 4d 08          	bsr    0x8(%ebp),%ecx
41f9c5:	6a 3f                	push   $0x3f
41f9c7:	58                   	pop    %eax
41f9c8:	2b c1                	sub    %ecx,%eax
41f9ca:	c9                   	leave
41f9cb:	c3                   	ret
41f9cc:	55                   	push   %ebp
41f9cd:	8b ec                	mov    %esp,%ebp
41f9cf:	8b 45 0c             	mov    0xc(%ebp),%eax
41f9d2:	56                   	push   %esi
41f9d3:	8b 71 04             	mov    0x4(%ecx),%esi
41f9d6:	3b f0                	cmp    %eax,%esi
41f9d8:	0f 42 c6             	cmovb  %esi,%eax
41f9db:	50                   	push   %eax
41f9dc:	ff 75 08             	push   0x8(%ebp)
41f9df:	ff 31                	push   (%ecx)
41f9e1:	e8 ec 1b 02 00       	call   0x4415d2
41f9e6:	83 c4 0c             	add    $0xc,%esp
41f9e9:	85 c0                	test   %eax,%eax
41f9eb:	75 0b                	jne    0x41f9f8
41f9ed:	3b 75 0c             	cmp    0xc(%ebp),%esi
41f9f0:	74 06                	je     0x41f9f8
41f9f2:	1b c0                	sbb    %eax,%eax
41f9f4:	83 e0 fe             	and    $0xfffffffe,%eax
41f9f7:	40                   	inc    %eax
41f9f8:	5e                   	pop    %esi
41f9f9:	5d                   	pop    %ebp
41f9fa:	c2 08 00             	ret    $0x8
41f9fd:	55                   	push   %ebp
41f9fe:	8b ec                	mov    %esp,%ebp
41fa00:	8b 55 10             	mov    0x10(%ebp),%edx
41fa03:	33 c9                	xor    %ecx,%ecx
41fa05:	8b 45 0c             	mov    0xc(%ebp),%eax
41fa08:	85 d2                	test   %edx,%edx
41fa0a:	74 33                	je     0x41fa3f
41fa0c:	53                   	push   %ebx
41fa0d:	8b 5d 08             	mov    0x8(%ebp),%ebx
41fa10:	56                   	push   %esi
41fa11:	57                   	push   %edi
41fa12:	0f b7 38             	movzwl (%eax),%edi
41fa15:	0f b7 33             	movzwl (%ebx),%esi
41fa18:	66 3b f7             	cmp    %di,%si
41fa1b:	72 1c                	jb     0x41fa39
41fa1d:	2b d8                	sub    %eax,%ebx
41fa1f:	66 3b f7             	cmp    %di,%si
41fa22:	77 1f                	ja     0x41fa43
41fa24:	83 fa 01             	cmp    $0x1,%edx
41fa27:	74 13                	je     0x41fa3c
41fa29:	83 c0 02             	add    $0x2,%eax
41fa2c:	4a                   	dec    %edx
41fa2d:	0f b7 34 03          	movzwl (%ebx,%eax,1),%esi
41fa31:	0f b7 38             	movzwl (%eax),%edi
41fa34:	66 3b f7             	cmp    %di,%si
41fa37:	73 e9                	jae    0x41fa22
41fa39:	83 c9 ff             	or     $0xffffffff,%ecx
41fa3c:	5f                   	pop    %edi
41fa3d:	5e                   	pop    %esi
41fa3e:	5b                   	pop    %ebx
41fa3f:	8b c1                	mov    %ecx,%eax
41fa41:	5d                   	pop    %ebp
41fa42:	c3                   	ret
41fa43:	33 c9                	xor    %ecx,%ecx
41fa45:	41                   	inc    %ecx
41fa46:	eb f4                	jmp    0x41fa3c
41fa48:	55                   	push   %ebp
41fa49:	8b ec                	mov    %esp,%ebp
41fa4b:	6a ff                	push   $0xffffffff
41fa4d:	68 9a f9 48 00       	push   $0x48f99a
41fa52:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41fa58:	50                   	push   %eax
41fa59:	51                   	push   %ecx
41fa5a:	53                   	push   %ebx
41fa5b:	56                   	push   %esi
41fa5c:	a1 94 80 4b 00       	mov    0x4b8094,%eax
41fa61:	33 c5                	xor    %ebp,%eax
41fa63:	50                   	push   %eax
41fa64:	8d 45 f4             	lea    -0xc(%ebp),%eax
41fa67:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41fa6d:	33 db                	xor    %ebx,%ebx
41fa6f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41fa72:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41fa75:	8b 75 08             	mov    0x8(%ebp),%esi
41fa78:	8b ce                	mov    %esi,%ecx
41fa7a:	6a 06                	push   $0x6
41fa7c:	68 08 4a 49 00       	push   $0x494a08
41fa81:	89 5e 10             	mov    %ebx,0x10(%esi)
41fa84:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
41fa8b:	88 1e                	mov    %bl,(%esi)
41fa8d:	e8 18 fd ff ff       	call   0x41f7aa
41fa92:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41fa95:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
41fa9c:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
41fa9f:	74 40                	je     0x41fae1
41faa1:	53                   	push   %ebx
41faa2:	53                   	push   %ebx
41faa3:	53                   	push   %ebx
41faa4:	53                   	push   %ebx
41faa5:	ff 75 10             	push   0x10(%ebp)
41faa8:	ff 75 0c             	push   0xc(%ebp)
41faab:	53                   	push   %ebx
41faac:	ff 75 14             	push   0x14(%ebp)
41faaf:	ff 15 78 41 49 00    	call   *0x494178
41fab5:	8b d8                	mov    %eax,%ebx
41fab7:	8b ce                	mov    %esi,%ecx
41fab9:	6a 00                	push   $0x0
41fabb:	53                   	push   %ebx
41fabc:	e8 c2 2d 00 00       	call   0x422883
41fac1:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
41fac5:	8b c6                	mov    %esi,%eax
41fac7:	72 02                	jb     0x41facb
41fac9:	8b 06                	mov    (%esi),%eax
41facb:	33 c9                	xor    %ecx,%ecx
41facd:	51                   	push   %ecx
41face:	51                   	push   %ecx
41facf:	53                   	push   %ebx
41fad0:	50                   	push   %eax
41fad1:	ff 75 10             	push   0x10(%ebp)
41fad4:	ff 75 0c             	push   0xc(%ebp)
41fad7:	51                   	push   %ecx
41fad8:	ff 75 14             	push   0x14(%ebp)
41fadb:	ff 15 78 41 49 00    	call   *0x494178
41fae1:	8b c6                	mov    %esi,%eax
41fae3:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41fae6:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41faed:	59                   	pop    %ecx
41faee:	5e                   	pop    %esi
41faef:	5b                   	pop    %ebx
41faf0:	c9                   	leave
41faf1:	c3                   	ret
41faf2:	55                   	push   %ebp
41faf3:	8b ec                	mov    %esp,%ebp
41faf5:	6a ff                	push   $0xffffffff
41faf7:	68 ce f9 48 00       	push   $0x48f9ce
41fafc:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41fb02:	50                   	push   %eax
41fb03:	51                   	push   %ecx
41fb04:	53                   	push   %ebx
41fb05:	56                   	push   %esi
41fb06:	a1 94 80 4b 00       	mov    0x4b8094,%eax
41fb0b:	33 c5                	xor    %ebp,%eax
41fb0d:	50                   	push   %eax
41fb0e:	8d 45 f4             	lea    -0xc(%ebp),%eax
41fb11:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41fb17:	33 db                	xor    %ebx,%ebx
41fb19:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41fb1c:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41fb1f:	8b 75 08             	mov    0x8(%ebp),%esi
41fb22:	8b ce                	mov    %esi,%ecx
41fb24:	68 f8 49 49 00       	push   $0x4949f8
41fb29:	e8 30 b8 fe ff       	call   0x40b35e
41fb2e:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41fb31:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
41fb38:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
41fb3b:	74 3b                	je     0x41fb78
41fb3d:	53                   	push   %ebx
41fb3e:	53                   	push   %ebx
41fb3f:	ff 75 10             	push   0x10(%ebp)
41fb42:	ff 75 0c             	push   0xc(%ebp)
41fb45:	53                   	push   %ebx
41fb46:	ff 75 14             	push   0x14(%ebp)
41fb49:	ff 15 74 41 49 00    	call   *0x494174
41fb4f:	8b d8                	mov    %eax,%ebx
41fb51:	8b ce                	mov    %esi,%ecx
41fb53:	6a 00                	push   $0x0
41fb55:	53                   	push   %ebx
41fb56:	e8 54 2d 00 00       	call   0x4228af
41fb5b:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
41fb5f:	8b c6                	mov    %esi,%eax
41fb61:	72 02                	jb     0x41fb65
41fb63:	8b 06                	mov    (%esi),%eax
41fb65:	53                   	push   %ebx
41fb66:	50                   	push   %eax
41fb67:	ff 75 10             	push   0x10(%ebp)
41fb6a:	ff 75 0c             	push   0xc(%ebp)
41fb6d:	6a 00                	push   $0x0
41fb6f:	ff 75 14             	push   0x14(%ebp)
41fb72:	ff 15 74 41 49 00    	call   *0x494174
41fb78:	8b c6                	mov    %esi,%eax
41fb7a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41fb7d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41fb84:	59                   	pop    %ecx
41fb85:	5e                   	pop    %esi
41fb86:	5b                   	pop    %ebx
41fb87:	c9                   	leave
41fb88:	c3                   	ret
41fb89:	55                   	push   %ebp
41fb8a:	8b ec                	mov    %esp,%ebp
41fb8c:	51                   	push   %ecx
41fb8d:	8b 4d 08             	mov    0x8(%ebp),%ecx
41fb90:	8b c1                	mov    %ecx,%eax
41fb92:	83 c8 01             	or     $0x1,%eax
41fb95:	0f bd c0             	bsr    %eax,%eax
41fb98:	40                   	inc    %eax
41fb99:	69 c0 d1 04 00 00    	imul   $0x4d1,%eax,%eax
41fb9f:	c1 e8 0c             	shr    $0xc,%eax
41fba2:	3b 0c 85 40 47 49 00 	cmp    0x494740(,%eax,4),%ecx
41fba9:	1b c9                	sbb    %ecx,%ecx
41fbab:	f7 d9                	neg    %ecx
41fbad:	2b c1                	sub    %ecx,%eax
41fbaf:	40                   	inc    %eax
41fbb0:	c9                   	leave
41fbb1:	c3                   	ret
41fbb2:	55                   	push   %ebp
41fbb3:	8b ec                	mov    %esp,%ebp
41fbb5:	53                   	push   %ebx
41fbb6:	8b 5d 08             	mov    0x8(%ebp),%ebx
41fbb9:	8b c3                	mov    %ebx,%eax
41fbbb:	56                   	push   %esi
41fbbc:	8b 75 0c             	mov    0xc(%ebp),%esi
41fbbf:	57                   	push   %edi
41fbc0:	33 ff                	xor    %edi,%edi
41fbc2:	47                   	inc    %edi
41fbc3:	0b c7                	or     %edi,%eax
41fbc5:	56                   	push   %esi
41fbc6:	50                   	push   %eax
41fbc7:	e8 e7 fd ff ff       	call   0x41f9b3
41fbcc:	59                   	pop    %ecx
41fbcd:	59                   	pop    %ecx
41fbce:	6a 40                	push   $0x40
41fbd0:	59                   	pop    %ecx
41fbd1:	2b c8                	sub    %eax,%ecx
41fbd3:	69 c1 d1 04 00 00    	imul   $0x4d1,%ecx,%eax
41fbd9:	c1 e8 0c             	shr    $0xc,%eax
41fbdc:	3b 34 c5 6c 47 49 00 	cmp    0x49476c(,%eax,8),%esi
41fbe3:	77 0b                	ja     0x41fbf0
41fbe5:	72 0b                	jb     0x41fbf2
41fbe7:	3b 1c c5 68 47 49 00 	cmp    0x494768(,%eax,8),%ebx
41fbee:	72 02                	jb     0x41fbf2
41fbf0:	33 ff                	xor    %edi,%edi
41fbf2:	2b c7                	sub    %edi,%eax
41fbf4:	5f                   	pop    %edi
41fbf5:	5e                   	pop    %esi
41fbf6:	40                   	inc    %eax
41fbf7:	5b                   	pop    %ebx
41fbf8:	5d                   	pop    %ebp
41fbf9:	c3                   	ret
41fbfa:	8d 41 10             	lea    0x10(%ecx),%eax
41fbfd:	39 41 04             	cmp    %eax,0x4(%ecx)
41fc00:	74 0d                	je     0x41fc0f
41fc02:	ff 71 0c             	push   0xc(%ecx)
41fc05:	ff 71 04             	push   0x4(%ecx)
41fc08:	e8 1d 39 fe ff       	call   0x40352a
41fc0d:	59                   	pop    %ecx
41fc0e:	59                   	pop    %ecx
41fc0f:	c3                   	ret
41fc10:	55                   	push   %ebp
41fc11:	8b ec                	mov    %esp,%ebp
41fc13:	8b 45 0c             	mov    0xc(%ebp),%eax
41fc16:	c1 e0 02             	shl    $0x2,%eax
41fc19:	50                   	push   %eax
41fc1a:	ff 75 08             	push   0x8(%ebp)
41fc1d:	e8 08 39 fe ff       	call   0x40352a
41fc22:	59                   	pop    %ecx
41fc23:	59                   	pop    %ecx
41fc24:	5d                   	pop    %ebp
41fc25:	c2 08 00             	ret    $0x8
41fc28:	55                   	push   %ebp
41fc29:	8b ec                	mov    %esp,%ebp
41fc2b:	6b 45 0c 18          	imul   $0x18,0xc(%ebp),%eax
41fc2f:	50                   	push   %eax
41fc30:	ff 75 08             	push   0x8(%ebp)
41fc33:	e8 f2 38 fe ff       	call   0x40352a
41fc38:	59                   	pop    %ecx
41fc39:	59                   	pop    %ecx
41fc3a:	5d                   	pop    %ebp
41fc3b:	c2 08 00             	ret    $0x8
41fc3e:	55                   	push   %ebp
41fc3f:	8b ec                	mov    %esp,%ebp
41fc41:	8b 45 0c             	mov    0xc(%ebp),%eax
41fc44:	c1 e0 03             	shl    $0x3,%eax
41fc47:	50                   	push   %eax
41fc48:	ff 75 08             	push   0x8(%ebp)
41fc4b:	e8 da 38 fe ff       	call   0x40352a
41fc50:	59                   	pop    %ecx
41fc51:	59                   	pop    %ecx
41fc52:	5d                   	pop    %ebp
41fc53:	c2 08 00             	ret    $0x8
41fc56:	55                   	push   %ebp
41fc57:	8b ec                	mov    %esp,%ebp
41fc59:	8b 45 0c             	mov    0xc(%ebp),%eax
41fc5c:	c1 e0 03             	shl    $0x3,%eax
41fc5f:	50                   	push   %eax
41fc60:	ff 75 08             	push   0x8(%ebp)
41fc63:	e8 c2 38 fe ff       	call   0x40352a
41fc68:	59                   	pop    %ecx
41fc69:	59                   	pop    %ecx
41fc6a:	5d                   	pop    %ebp
41fc6b:	c2 08 00             	ret    $0x8
41fc6e:	55                   	push   %ebp
41fc6f:	8b ec                	mov    %esp,%ebp
41fc71:	8b 45 0c             	mov    0xc(%ebp),%eax
41fc74:	c1 e0 03             	shl    $0x3,%eax
41fc77:	50                   	push   %eax
41fc78:	ff 75 08             	push   0x8(%ebp)
41fc7b:	e8 aa 38 fe ff       	call   0x40352a
41fc80:	59                   	pop    %ecx
41fc81:	59                   	pop    %ecx
41fc82:	5d                   	pop    %ebp
41fc83:	c2 08 00             	ret    $0x8
41fc86:	55                   	push   %ebp
41fc87:	8b ec                	mov    %esp,%ebp
41fc89:	8b 45 0c             	mov    0xc(%ebp),%eax
41fc8c:	c1 e0 03             	shl    $0x3,%eax
41fc8f:	50                   	push   %eax
41fc90:	ff 75 08             	push   0x8(%ebp)
41fc93:	e8 92 38 fe ff       	call   0x40352a
41fc98:	59                   	pop    %ecx
41fc99:	59                   	pop    %ecx
41fc9a:	5d                   	pop    %ebp
41fc9b:	c2 08 00             	ret    $0x8
41fc9e:	55                   	push   %ebp
41fc9f:	8b ec                	mov    %esp,%ebp
41fca1:	6b 45 0c 18          	imul   $0x18,0xc(%ebp),%eax
41fca5:	50                   	push   %eax
41fca6:	ff 75 08             	push   0x8(%ebp)
41fca9:	e8 7c 38 fe ff       	call   0x40352a
41fcae:	59                   	pop    %ecx
41fcaf:	59                   	pop    %ecx
41fcb0:	5d                   	pop    %ebp
41fcb1:	c2 08 00             	ret    $0x8
41fcb4:	55                   	push   %ebp
41fcb5:	8b ec                	mov    %esp,%ebp