41883e:	cc                   	int3
41883f:	cc                   	int3
418840:	8b ff                	mov    %edi,%edi
418842:	55                   	push   %ebp
418843:	8b ec                	mov    %esp,%ebp
418845:	51                   	push   %ecx
418846:	83 3d b8 f7 43 00 00 	cmpl   $0x0,0x43f7b8
41884d:	56                   	push   %esi
41884e:	8b 75 08             	mov    0x8(%ebp),%esi
418851:	57                   	push   %edi
418852:	8d 7e 01             	lea    0x1(%esi),%edi
418855:	75 1a                	jne    0x418871
418857:	81 ff 00 01 00 00    	cmp    $0x100,%edi
41885d:	77 5d                	ja     0x4188bc
41885f:	a1 58 d1 43 00       	mov    0x43d158,%eax
418864:	5f                   	pop    %edi
418865:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
418869:	83 e0 02             	and    $0x2,%eax
41886c:	5e                   	pop    %esi
41886d:	8b e5                	mov    %ebp,%esp
41886f:	5d                   	pop    %ebp
418870:	c3                   	ret
418871:	e8 73 3a 00 00       	call   0x41c2e9
418876:	8b 48 4c             	mov    0x4c(%eax),%ecx
418879:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41887c:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41887f:	51                   	push   %ecx
418880:	50                   	push   %eax
418881:	e8 d0 40 00 00       	call   0x41c956
418886:	8b 45 fc             	mov    -0x4(%ebp),%eax
418889:	83 c4 08             	add    $0x8,%esp
41888c:	81 ff 00 01 00 00    	cmp    $0x100,%edi
418892:	77 0f                	ja     0x4188a3
418894:	8b 00                	mov    (%eax),%eax
418896:	5f                   	pop    %edi
418897:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
41889b:	83 e0 02             	and    $0x2,%eax
41889e:	5e                   	pop    %esi
41889f:	8b e5                	mov    %ebp,%esp
4188a1:	5d                   	pop    %ebp
4188a2:	c3                   	ret
4188a3:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
4188a7:	7e 13                	jle    0x4188bc
4188a9:	6a 00                	push   $0x0
4188ab:	6a 02                	push   $0x2
4188ad:	56                   	push   %esi
4188ae:	e8 96 56 00 00       	call   0x41df49
4188b3:	83 c4 0c             	add    $0xc,%esp
4188b6:	5f                   	pop    %edi
4188b7:	5e                   	pop    %esi
4188b8:	8b e5                	mov    %ebp,%esp
4188ba:	5d                   	pop    %ebp
4188bb:	c3                   	ret
4188bc:	5f                   	pop    %edi
4188bd:	33 c0                	xor    %eax,%eax
4188bf:	5e                   	pop    %esi
4188c0:	8b e5                	mov    %ebp,%esp
4188c2:	5d                   	pop    %ebp
4188c3:	c3                   	ret
4188c4:	cc                   	int3
4188c5:	cc                   	int3
4188c6:	cc                   	int3
4188c7:	cc                   	int3
4188c8:	cc                   	int3
4188c9:	cc                   	int3
4188ca:	cc                   	int3
4188cb:	cc                   	int3
4188cc:	cc                   	int3
4188cd:	cc                   	int3
4188ce:	cc                   	int3
4188cf:	cc                   	int3
4188d0:	8b ff                	mov    %edi,%edi
4188d2:	55                   	push   %ebp
4188d3:	8b ec                	mov    %esp,%ebp
4188d5:	51                   	push   %ecx
4188d6:	83 3d b8 f7 43 00 00 	cmpl   $0x0,0x43f7b8
4188dd:	56                   	push   %esi
4188de:	8b 75 08             	mov    0x8(%ebp),%esi
4188e1:	57                   	push   %edi
4188e2:	8d 7e 01             	lea    0x1(%esi),%edi
4188e5:	75 1a                	jne    0x418901
4188e7:	81 ff 00 01 00 00    	cmp    $0x100,%edi
4188ed:	77 5d                	ja     0x41894c
4188ef:	a1 58 d1 43 00       	mov    0x43d158,%eax
4188f4:	5f                   	pop    %edi
4188f5:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
4188f9:	83 e0 08             	and    $0x8,%eax
4188fc:	5e                   	pop    %esi
4188fd:	8b e5                	mov    %ebp,%esp
4188ff:	5d                   	pop    %ebp
418900:	c3                   	ret
418901:	e8 e3 39 00 00       	call   0x41c2e9
418906:	8b 48 4c             	mov    0x4c(%eax),%ecx
418909:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41890c:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41890f:	51                   	push   %ecx
418910:	50                   	push   %eax
418911:	e8 40 40 00 00       	call   0x41c956
418916:	8b 45 fc             	mov    -0x4(%ebp),%eax
418919:	83 c4 08             	add    $0x8,%esp
41891c:	81 ff 00 01 00 00    	cmp    $0x100,%edi
418922:	77 0f                	ja     0x418933
418924:	8b 00                	mov    (%eax),%eax
418926:	5f                   	pop    %edi
418927:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
41892b:	83 e0 08             	and    $0x8,%eax
41892e:	5e                   	pop    %esi
41892f:	8b e5                	mov    %ebp,%esp
418931:	5d                   	pop    %ebp
418932:	c3                   	ret
418933:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
418937:	7e 13                	jle    0x41894c
418939:	6a 00                	push   $0x0
41893b:	6a 08                	push   $0x8
41893d:	56                   	push   %esi
41893e:	e8 06 56 00 00       	call   0x41df49
418943:	83 c4 0c             	add    $0xc,%esp
418946:	5f                   	pop    %edi
418947:	5e                   	pop    %esi
418948:	8b e5                	mov    %ebp,%esp
41894a:	5d                   	pop    %ebp
41894b:	c3                   	ret
41894c:	5f                   	pop    %edi
41894d:	33 c0                	xor    %eax,%eax
41894f:	5e                   	pop    %esi
418950:	8b e5                	mov    %ebp,%esp
418952:	5d                   	pop    %ebp
418953:	c3                   	ret
418954:	cc                   	int3
418955:	cc                   	int3
418956:	cc                   	int3
418957:	cc                   	int3
418958:	cc                   	int3
418959:	cc                   	int3
41895a:	cc                   	int3
41895b:	cc                   	int3
41895c:	cc                   	int3
41895d:	cc                   	int3
41895e:	cc                   	int3
41895f:	cc                   	int3
418960:	8b ff                	mov    %edi,%edi
418962:	55                   	push   %ebp
418963:	8b ec                	mov    %esp,%ebp
418965:	51                   	push   %ecx
418966:	83 3d b8 f7 43 00 00 	cmpl   $0x0,0x43f7b8
41896d:	56                   	push   %esi
41896e:	8b 75 08             	mov    0x8(%ebp),%esi
418971:	57                   	push   %edi
418972:	8d 7e 01             	lea    0x1(%esi),%edi
418975:	75 1a                	jne    0x418991
418977:	81 ff 00 01 00 00    	cmp    $0x100,%edi
41897d:	77 5d                	ja     0x4189dc
41897f:	a1 58 d1 43 00       	mov    0x43d158,%eax
418984:	5f                   	pop    %edi
418985:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
418989:	83 e0 01             	and    $0x1,%eax
41898c:	5e                   	pop    %esi
41898d:	8b e5                	mov    %ebp,%esp
41898f:	5d                   	pop    %ebp
418990:	c3                   	ret
418991:	e8 53 39 00 00       	call   0x41c2e9
418996:	8b 48 4c             	mov    0x4c(%eax),%ecx
418999:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41899c:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41899f:	51                   	push   %ecx
4189a0:	50                   	push   %eax
4189a1:	e8 b0 3f 00 00       	call   0x41c956
4189a6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4189a9:	83 c4 08             	add    $0x8,%esp
4189ac:	81 ff 00 01 00 00    	cmp    $0x100,%edi
4189b2:	77 0f                	ja     0x4189c3
4189b4:	8b 00                	mov    (%eax),%eax
4189b6:	5f                   	pop    %edi
4189b7:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
4189bb:	83 e0 01             	and    $0x1,%eax
4189be:	5e                   	pop    %esi
4189bf:	8b e5                	mov    %ebp,%esp
4189c1:	5d                   	pop    %ebp
4189c2:	c3                   	ret
4189c3:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
4189c7:	7e 13                	jle    0x4189dc
4189c9:	6a 00                	push   $0x0
4189cb:	6a 01                	push   $0x1
4189cd:	56                   	push   %esi
4189ce:	e8 76 55 00 00       	call   0x41df49
4189d3:	83 c4 0c             	add    $0xc,%esp
4189d6:	5f                   	pop    %edi
4189d7:	5e                   	pop    %esi
4189d8:	8b e5                	mov    %ebp,%esp
4189da:	5d                   	pop    %ebp
4189db:	c3                   	ret
4189dc:	5f                   	pop    %edi
4189dd:	33 c0                	xor    %eax,%eax
4189df:	5e                   	pop    %esi
4189e0:	8b e5                	mov    %ebp,%esp
4189e2:	5d                   	pop    %ebp
4189e3:	c3                   	ret
4189e4:	8b ff                	mov    %edi,%edi
4189e6:	55                   	push   %ebp
4189e7:	8b ec                	mov    %esp,%ebp
4189e9:	8b 55 08             	mov    0x8(%ebp),%edx
4189ec:	2b 55 10             	sub    0x10(%ebp),%edx
4189ef:	53                   	push   %ebx
4189f0:	56                   	push   %esi
4189f1:	57                   	push   %edi
4189f2:	8b 7d 0c             	mov    0xc(%ebp),%edi
4189f5:	1b 7d 14             	sbb    0x14(%ebp),%edi
4189f8:	33 c9                	xor    %ecx,%ecx
4189fa:	33 c0                	xor    %eax,%eax
4189fc:	41                   	inc    %ecx
4189fd:	39 45 0c             	cmp    %eax,0xc(%ebp)
418a00:	7f 0b                	jg     0x418a0d
418a02:	7c 05                	jl     0x418a09
418a04:	39 45 08             	cmp    %eax,0x8(%ebp)
418a07:	73 04                	jae    0x418a0d
418a09:	8b d9                	mov    %ecx,%ebx
418a0b:	eb 02                	jmp    0x418a0f
418a0d:	8b d8                	mov    %eax,%ebx
418a0f:	39 45 14             	cmp    %eax,0x14(%ebp)
418a12:	7f 0b                	jg     0x418a1f
418a14:	7c 05                	jl     0x418a1b
418a16:	39 45 10             	cmp    %eax,0x10(%ebp)
418a19:	73 04                	jae    0x418a1f
418a1b:	8b f1                	mov    %ecx,%esi
418a1d:	eb 02                	jmp    0x418a21
418a1f:	8b f0                	mov    %eax,%esi
418a21:	3b de                	cmp    %esi,%ebx
418a23:	74 2c                	je     0x418a51
418a25:	39 45 0c             	cmp    %eax,0xc(%ebp)
418a28:	7f 0b                	jg     0x418a35
418a2a:	7c 05                	jl     0x418a31
418a2c:	39 45 08             	cmp    %eax,0x8(%ebp)
418a2f:	73 04                	jae    0x418a35
418a31:	8b f1                	mov    %ecx,%esi
418a33:	eb 02                	jmp    0x418a37
418a35:	8b f0                	mov    %eax,%esi
418a37:	3b f8                	cmp    %eax,%edi
418a39:	7f 06                	jg     0x418a41
418a3b:	7c 06                	jl     0x418a43
418a3d:	3b d0                	cmp    %eax,%edx
418a3f:	72 02                	jb     0x418a43
418a41:	8b c8                	mov    %eax,%ecx
418a43:	3b f1                	cmp    %ecx,%esi
418a45:	74 0a                	je     0x418a51
418a47:	83 ca ff             	or     $0xffffffff,%edx
418a4a:	b8 16 02 07 80       	mov    $0x80070216,%eax
418a4f:	8b fa                	mov    %edx,%edi
418a51:	8b 4d 18             	mov    0x18(%ebp),%ecx
418a54:	89 11                	mov    %edx,(%ecx)
418a56:	89 79 04             	mov    %edi,0x4(%ecx)
418a59:	5f                   	pop    %edi
418a5a:	5e                   	pop    %esi
418a5b:	5b                   	pop    %ebx
418a5c:	5d                   	pop    %ebp
418a5d:	c3                   	ret
418a5e:	6a 0c                	push   $0xc
418a60:	68 d8 ab 43 00       	push   $0x43abd8
418a65:	e8 66 1a ff ff       	call   0x40a4d0
418a6a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
418a6e:	75 23                	jne    0x418a93
418a70:	33 f6                	xor    %esi,%esi
418a72:	8b 45 18             	mov    0x18(%ebp),%eax
418a75:	50                   	push   %eax
418a76:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
418a7d:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
418a81:	56                   	push   %esi
418a82:	56                   	push   %esi
418a83:	56                   	push   %esi
418a84:	56                   	push   %esi
418a85:	56                   	push   %esi
418a86:	e8 e6 48 ff ff       	call   0x40d371
418a8b:	83 c4 18             	add    $0x18,%esp
418a8e:	83 c8 ff             	or     $0xffffffff,%eax
418a91:	eb 58                	jmp    0x418aeb
418a93:	8b 7d 14             	mov    0x14(%ebp),%edi
418a96:	85 ff                	test   %edi,%edi
418a98:	74 10                	je     0x418aaa
418a9a:	83 ff 01             	cmp    $0x1,%edi
418a9d:	74 0b                	je     0x418aaa
418a9f:	83 ff 02             	cmp    $0x2,%edi
418aa2:	74 06                	je     0x418aaa
418aa4:	33 f6                	xor    %esi,%esi
418aa6:	8b c6                	mov    %esi,%eax
418aa8:	eb 05                	jmp    0x418aaf
418aaa:	33 c0                	xor    %eax,%eax
418aac:	40                   	inc    %eax
418aad:	33 f6                	xor    %esi,%esi
418aaf:	85 c0                	test   %eax,%eax
418ab1:	74 bf                	je     0x418a72
418ab3:	83 4d e4 ff          	orl    $0xffffffff,-0x1c(%ebp)
418ab7:	ff 75 08             	push   0x8(%ebp)
418aba:	e8 12 4f 00 00       	call   0x41d9d1
418abf:	59                   	pop    %ecx
418ac0:	89 75 fc             	mov    %esi,-0x4(%ebp)
418ac3:	ff 75 18             	push   0x18(%ebp)
418ac6:	57                   	push   %edi
418ac7:	ff 75 10             	push   0x10(%ebp)
418aca:	ff 75 0c             	push   0xc(%ebp)
418acd:	ff 75 08             	push   0x8(%ebp)
418ad0:	e8 0c 01 00 00       	call   0x418be1
418ad5:	83 c4 14             	add    $0x14,%esp
418ad8:	8b f0                	mov    %eax,%esi
418ada:	89 75 e4             	mov    %esi,-0x1c(%ebp)
418add:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
418ae4:	e8 15 00 00 00       	call   0x418afe
418ae9:	8b c6                	mov    %esi,%eax
418aeb:	8b 4d f0             	mov    -0x10(%ebp),%ecx
418aee:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
418af5:	59                   	pop    %ecx
418af6:	5f                   	pop    %edi
418af7:	5e                   	pop    %esi
418af8:	5b                   	pop    %ebx
418af9:	c9                   	leave
418afa:	c3                   	ret
418afb:	8b 75 e4             	mov    -0x1c(%ebp),%esi
418afe:	ff 75 08             	push   0x8(%ebp)
418b01:	e8 df 4e 00 00       	call   0x41d9e5
418b06:	59                   	pop    %ecx
418b07:	c3                   	ret
418b08:	8b ff                	mov    %edi,%edi
418b0a:	55                   	push   %ebp
418b0b:	8b ec                	mov    %esp,%ebp
418b0d:	83 7d 14 02          	cmpl   $0x2,0x14(%ebp)
418b11:	56                   	push   %esi
418b12:	57                   	push   %edi
418b13:	0f 84 8c 00 00 00    	je     0x418ba5
418b19:	8b 45 08             	mov    0x8(%ebp),%eax
418b1c:	8b 40 0c             	mov    0xc(%eax),%eax
418b1f:	90                   	nop
418b20:	a9 c0 04 00 00       	test   $0x4c0,%eax
418b25:	74 7e                	je     0x418ba5
418b27:	8b 45 08             	mov    0x8(%ebp),%eax
418b2a:	8b 40 0c             	mov    0xc(%eax),%eax
418b2d:	90                   	nop
418b2e:	a8 06                	test   $0x6,%al
418b30:	75 73                	jne    0x418ba5
418b32:	8b 45 08             	mov    0x8(%ebp),%eax
418b35:	33 f6                	xor    %esi,%esi
418b37:	39 70 08             	cmp    %esi,0x8(%eax)
418b3a:	7e 69                	jle    0x418ba5
418b3c:	8b 50 10             	mov    0x10(%eax),%edx
418b3f:	90                   	nop
418b40:	8b c2                	mov    %edx,%eax
418b42:	8b ca                	mov    %edx,%ecx
418b44:	83 e0 3f             	and    $0x3f,%eax
418b47:	c1 f9 06             	sar    $0x6,%ecx
418b4a:	6b c0 38             	imul   $0x38,%eax,%eax
418b4d:	8b 0c 8d 00 f8 43 00 	mov    0x43f800(,%ecx,4),%ecx
418b54:	80 7c 01 28 00       	cmpb   $0x0,0x28(%ecx,%eax,1)
418b59:	7c 4a                	jl     0x418ba5