41a969:	56                   	push   %esi
41a96a:	57                   	push   %edi
41a96b:	55                   	push   %ebp
41a96c:	8b ea                	mov    %edx,%ebp
41a96e:	8b f8                	mov    %eax,%edi
41a970:	8b 47 50             	mov    0x50(%edi),%eax
41a973:	8b 70 08             	mov    0x8(%eax),%esi
41a976:	4e                   	dec    %esi
41a977:	85 f6                	test   %esi,%esi
41a979:	7c 26                	jl     0x41a9a1
41a97b:	46                   	inc    %esi
41a97c:	33 db                	xor    %ebx,%ebx
41a97e:	8b 47 50             	mov    0x50(%edi),%eax
41a981:	8b d3                	mov    %ebx,%edx
41a983:	e8 f4 93 ff ff       	call   0x413d7c
41a988:	3b e8                	cmp    %eax,%ebp
41a98a:	75 11                	jne    0x41a99d
41a98c:	33 c0                	xor    %eax,%eax
41a98e:	89 45 10             	mov    %eax,0x10(%ebp)
41a991:	8b 47 50             	mov    0x50(%edi),%eax
41a994:	8b d3                	mov    %ebx,%edx
41a996:	e8 d1 92 ff ff       	call   0x413c6c
41a99b:	eb 04                	jmp    0x41a9a1
41a99d:	43                   	inc    %ebx
41a99e:	4e                   	dec    %esi
41a99f:	75 dd                	jne    0x41a97e
41a9a1:	5d                   	pop    %ebp
41a9a2:	5f                   	pop    %edi
41a9a3:	5e                   	pop    %esi
41a9a4:	5b                   	pop    %ebx
41a9a5:	c3                   	ret
41a9a6:	8b c0                	mov    %eax,%eax
41a9a8:	53                   	push   %ebx
41a9a9:	56                   	push   %esi
41a9aa:	8b f2                	mov    %edx,%esi
41a9ac:	8b d8                	mov    %eax,%ebx
41a9ae:	8b 43 30             	mov    0x30(%ebx),%eax
41a9b1:	3b f0                	cmp    %eax,%esi
41a9b3:	74 1b                	je     0x41a9d0
41a9b5:	85 c0                	test   %eax,%eax
41a9b7:	74 07                	je     0x41a9c0
41a9b9:	8b d3                	mov    %ebx,%edx
41a9bb:	e8 1c f8 ff ff       	call   0x41a1dc
41a9c0:	8b c6                	mov    %esi,%eax
41a9c2:	89 43 30             	mov    %eax,0x30(%ebx)
41a9c5:	85 c0                	test   %eax,%eax
41a9c7:	74 07                	je     0x41a9d0
41a9c9:	8b d3                	mov    %ebx,%edx
41a9cb:	e8 dc f5 ff ff       	call   0x419fac
41a9d0:	5e                   	pop    %esi
41a9d1:	5b                   	pop    %ebx
41a9d2:	c3                   	ret
41a9d3:	90                   	nop
41a9d4:	55                   	push   %ebp
41a9d5:	8b ec                	mov    %esp,%ebp
41a9d7:	53                   	push   %ebx
41a9d8:	56                   	push   %esi
41a9d9:	57                   	push   %edi
41a9da:	84 d2                	test   %dl,%dl
41a9dc:	74 08                	je     0x41a9e6
41a9de:	83 c4 f0             	add    $0xfffffff0,%esp
41a9e1:	e8 86 8b fe ff       	call   0x40356c
41a9e6:	8b f1                	mov    %ecx,%esi
41a9e8:	8b da                	mov    %edx,%ebx
41a9ea:	8b f8                	mov    %eax,%edi
41a9ec:	33 d2                	xor    %edx,%edx
41a9ee:	8b c7                	mov    %edi,%eax
41a9f0:	e8 23 88 fe ff       	call   0x403218
41a9f5:	89 77 0c             	mov    %esi,0xc(%edi)
41a9f8:	8a 45 08             	mov    0x8(%ebp),%al
41a9fb:	88 47 10             	mov    %al,0x10(%edi)
41a9fe:	8b c7                	mov    %edi,%eax
41aa00:	84 db                	test   %bl,%bl
41aa02:	74 0f                	je     0x41aa13
41aa04:	e8 bb 8b fe ff       	call   0x4035c4
41aa09:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41aa10:	83 c4 0c             	add    $0xc,%esp
41aa13:	8b c7                	mov    %edi,%eax
41aa15:	5f                   	pop    %edi
41aa16:	5e                   	pop    %esi
41aa17:	5b                   	pop    %ebx
41aa18:	5d                   	pop    %ebp
41aa19:	c2 04 00             	ret    $0x4
41aa1c:	53                   	push   %ebx
41aa1d:	56                   	push   %esi
41aa1e:	e8 b1 8b fe ff       	call   0x4035d4
41aa23:	8b da                	mov    %edx,%ebx
41aa25:	8b f0                	mov    %eax,%esi
41aa27:	80 7e 10 01          	cmpb   $0x1,0x10(%esi)
41aa2b:	75 0d                	jne    0x41aa3a
41aa2d:	8b 46 0c             	mov    0xc(%esi),%eax
41aa30:	e8 13 88 fe ff       	call   0x403248
41aa35:	33 c0                	xor    %eax,%eax
41aa37:	89 46 0c             	mov    %eax,0xc(%esi)
41aa3a:	8b d3                	mov    %ebx,%edx
41aa3c:	80 e2 fc             	and    $0xfc,%dl
41aa3f:	8b c6                	mov    %esi,%eax
41aa41:	e8 f2 87 fe ff       	call   0x403238
41aa46:	84 db                	test   %bl,%bl
41aa48:	7e 07                	jle    0x41aa51
41aa4a:	8b c6                	mov    %esi,%eax
41aa4c:	e8 6b 8b fe ff       	call   0x4035bc
41aa51:	5e                   	pop    %esi
41aa52:	5b                   	pop    %ebx
41aa53:	c3                   	ret
41aa54:	55                   	push   %ebp
41aa55:	8b ec                	mov    %esp,%ebp
41aa57:	53                   	push   %ebx
41aa58:	56                   	push   %esi
41aa59:	57                   	push   %edi
41aa5a:	8b 55 0c             	mov    0xc(%ebp),%edx
41aa5d:	8b 45 08             	mov    0x8(%ebp),%eax
41aa60:	33 c9                	xor    %ecx,%ecx
41aa62:	55                   	push   %ebp
41aa63:	68 a3 aa 41 00       	push   $0x41aaa3
41aa68:	64 ff 31             	push   %fs:(%ecx)
41aa6b:	64 89 21             	mov    %esp,%fs:(%ecx)
41aa6e:	85 d2                	test   %edx,%edx
41aa70:	75 0f                	jne    0x41aa81
41aa72:	bb 09 00 03 80       	mov    $0x80030009,%ebx
41aa77:	33 c0                	xor    %eax,%eax
41aa79:	5a                   	pop    %edx
41aa7a:	59                   	pop    %ecx
41aa7b:	59                   	pop    %ecx
41aa7c:	64 89 10             	mov    %edx,%fs:(%eax)
41aa7f:	eb 31                	jmp    0x41aab2
41aa81:	8b 40 0c             	mov    0xc(%eax),%eax
41aa84:	8b 4d 10             	mov    0x10(%ebp),%ecx
41aa87:	8b 18                	mov    (%eax),%ebx
41aa89:	ff 53 0c             	call   *0xc(%ebx)
41aa8c:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41aa90:	74 05                	je     0x41aa97
41aa92:	8b 55 14             	mov    0x14(%ebp),%edx
41aa95:	89 02                	mov    %eax,(%edx)
41aa97:	33 db                	xor    %ebx,%ebx
41aa99:	33 c0                	xor    %eax,%eax
41aa9b:	5a                   	pop    %edx
41aa9c:	59                   	pop    %ecx
41aa9d:	59                   	pop    %ecx
41aa9e:	64 89 10             	mov    %edx,%fs:(%eax)
41aaa1:	eb 0f                	jmp    0x41aab2
41aaa3:	e9 40 8c fe ff       	jmp    0x4036e8
41aaa8:	bb 01 00 00 00       	mov    $0x1,%ebx
41aaad:	e8 9e 8f fe ff       	call   0x403a50
41aab2:	8b c3                	mov    %ebx,%eax
41aab4:	5f                   	pop    %edi
41aab5:	5e                   	pop    %esi
41aab6:	5b                   	pop    %ebx
41aab7:	5d                   	pop    %ebp
41aab8:	c2 10 00             	ret    $0x10
41aabb:	90                   	nop
41aabc:	55                   	push   %ebp
41aabd:	8b ec                	mov    %esp,%ebp
41aabf:	53                   	push   %ebx
41aac0:	56                   	push   %esi
41aac1:	57                   	push   %edi
41aac2:	8b 55 0c             	mov    0xc(%ebp),%edx
41aac5:	8b 45 08             	mov    0x8(%ebp),%eax
41aac8:	33 c9                	xor    %ecx,%ecx
41aaca:	55                   	push   %ebp
41aacb:	68 0b ab 41 00       	push   $0x41ab0b
41aad0:	64 ff 31             	push   %fs:(%ecx)
41aad3:	64 89 21             	mov    %esp,%fs:(%ecx)
41aad6:	85 d2                	test   %edx,%edx
41aad8:	75 0f                	jne    0x41aae9
41aada:	bb 09 00 03 80       	mov    $0x80030009,%ebx
41aadf:	33 c0                	xor    %eax,%eax
41aae1:	5a                   	pop    %edx
41aae2:	59                   	pop    %ecx
41aae3:	59                   	pop    %ecx
41aae4:	64 89 10             	mov    %edx,%fs:(%eax)
41aae7:	eb 31                	jmp    0x41ab1a
41aae9:	8b 40 0c             	mov    0xc(%eax),%eax
41aaec:	8b 4d 10             	mov    0x10(%ebp),%ecx
41aaef:	8b 18                	mov    (%eax),%ebx
41aaf1:	ff 53 10             	call   *0x10(%ebx)
41aaf4:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41aaf8:	74 05                	je     0x41aaff
41aafa:	8b 55 14             	mov    0x14(%ebp),%edx
41aafd:	89 02                	mov    %eax,(%edx)
41aaff:	33 db                	xor    %ebx,%ebx
41ab01:	33 c0                	xor    %eax,%eax
41ab03:	5a                   	pop    %edx
41ab04:	59                   	pop    %ecx
41ab05:	59                   	pop    %ecx
41ab06:	64 89 10             	mov    %edx,%fs:(%eax)
41ab09:	eb 0f                	jmp    0x41ab1a
41ab0b:	e9 d8 8b fe ff       	jmp    0x4036e8
41ab10:	bb 03 01 03 80       	mov    $0x80030103,%ebx
41ab15:	e8 36 8f fe ff       	call   0x403a50
41ab1a:	8b c3                	mov    %ebx,%eax
41ab1c:	5f                   	pop    %edi
41ab1d:	5e                   	pop    %esi
41ab1e:	5b                   	pop    %ebx
41ab1f:	5d                   	pop    %ebp
41ab20:	c2 10 00             	ret    $0x10
41ab23:	90                   	nop
41ab24:	55                   	push   %ebp
41ab25:	8b ec                	mov    %esp,%ebp
41ab27:	83 c4 f8             	add    $0xfffffff8,%esp
41ab2a:	53                   	push   %ebx
41ab2b:	56                   	push   %esi
41ab2c:	57                   	push   %edi
41ab2d:	8b 5d 14             	mov    0x14(%ebp),%ebx
41ab30:	8b 75 08             	mov    0x8(%ebp),%esi
41ab33:	33 c0                	xor    %eax,%eax
41ab35:	55                   	push   %ebp
41ab36:	68 8e ab 41 00       	push   $0x41ab8e
41ab3b:	64 ff 30             	push   %fs:(%eax)
41ab3e:	64 89 20             	mov    %esp,%fs:(%eax)
41ab41:	85 db                	test   %ebx,%ebx
41ab43:	7c 05                	jl     0x41ab4a
41ab45:	83 fb 02             	cmp    $0x2,%ebx
41ab48:	7e 0f                	jle    0x41ab59
41ab4a:	bb 01 00 03 80       	mov    $0x80030001,%ebx
41ab4f:	33 c0                	xor    %eax,%eax
41ab51:	5a                   	pop    %edx
41ab52:	59                   	pop    %ecx
41ab53:	59                   	pop    %ecx
41ab54:	64 89 10             	mov    %edx,%fs:(%eax)
41ab57:	eb 44                	jmp    0x41ab9d
41ab59:	8b 46 0c             	mov    0xc(%esi),%eax
41ab5c:	8b cb                	mov    %ebx,%ecx
41ab5e:	8b 55 0c             	mov    0xc(%ebp),%edx
41ab61:	8b 18                	mov    (%eax),%ebx
41ab63:	ff 53 14             	call   *0x14(%ebx)
41ab66:	99                   	cltd
41ab67:	89 45 f8             	mov    %eax,-0x8(%ebp)
41ab6a:	89 55 fc             	mov    %edx,-0x4(%ebp)
41ab6d:	8b 45 18             	mov    0x18(%ebp),%eax
41ab70:	85 c0                	test   %eax,%eax
41ab72:	74 0e                	je     0x41ab82
41ab74:	8b 45 18             	mov    0x18(%ebp),%eax
41ab77:	8b 55 f8             	mov    -0x8(%ebp),%edx
41ab7a:	89 10                	mov    %edx,(%eax)
41ab7c:	8b 55 fc             	mov    -0x4(%ebp),%edx
41ab7f:	89 50 04             	mov    %edx,0x4(%eax)
41ab82:	33 db                	xor    %ebx,%ebx
41ab84:	33 c0                	xor    %eax,%eax
41ab86:	5a                   	pop    %edx
41ab87:	59                   	pop    %ecx
41ab88:	59                   	pop    %ecx
41ab89:	64 89 10             	mov    %edx,%fs:(%eax)
41ab8c:	eb 0f                	jmp    0x41ab9d
41ab8e:	e9 55 8b fe ff       	jmp    0x4036e8
41ab93:	bb 09 00 03 80       	mov    $0x80030009,%ebx
41ab98:	e8 b3 8e fe ff       	call   0x403a50
41ab9d:	8b c3                	mov    %ebx,%eax
41ab9f:	5f                   	pop    %edi
41aba0:	5e                   	pop    %esi
41aba1:	5b                   	pop    %ebx
41aba2:	59                   	pop    %ecx
41aba3:	59                   	pop    %ecx
41aba4:	5d                   	pop    %ebp
41aba5:	c2 14 00             	ret    $0x14
41aba8:	55                   	push   %ebp
41aba9:	8b ec                	mov    %esp,%ebp
41abab:	53                   	push   %ebx
41abac:	56                   	push   %esi
41abad:	57                   	push   %edi
41abae:	8b 5d 08             	mov    0x8(%ebp),%ebx
41abb1:	33 c0                	xor    %eax,%eax
41abb3:	55                   	push   %ebp
41abb4:	68 f1 ab 41 00       	push   $0x41abf1
41abb9:	64 ff 30             	push   %fs:(%eax)
41abbc:	64 89 20             	mov    %esp,%fs:(%eax)
41abbf:	ff 75 10             	push   0x10(%ebp)
41abc2:	ff 75 0c             	push   0xc(%ebp)
41abc5:	8b 43 0c             	mov    0xc(%ebx),%eax
41abc8:	e8 33 b6 ff ff       	call   0x416200
41abcd:	8b 43 0c             	mov    0xc(%ebx),%eax
41abd0:	8b 10                	mov    (%eax),%edx
41abd2:	ff 12                	call   *(%edx)
41abd4:	3b 55 10             	cmp    0x10(%ebp),%edx
41abd7:	75 03                	jne    0x41abdc
41abd9:	3b 45 0c             	cmp    0xc(%ebp),%eax
41abdc:	74 07                	je     0x41abe5
41abde:	bb 05 40 00 80       	mov    $0x80004005,%ebx
41abe3:	eb 02                	jmp    0x41abe7
41abe5:	33 db                	xor    %ebx,%ebx
41abe7:	33 c0                	xor    %eax,%eax
41abe9:	5a                   	pop    %edx
41abea:	59                   	pop    %ecx
41abeb:	59                   	pop    %ecx
41abec:	64 89 10             	mov    %edx,%fs:(%eax)
41abef:	eb 0f                	jmp    0x41ac00
41abf1:	e9 f2 8a fe ff       	jmp    0x4036e8
41abf6:	bb ff ff 00 80       	mov    $0x8000ffff,%ebx
41abfb:	e8 50 8e fe ff       	call   0x403a50
41ac00:	8b c3                	mov    %ebx,%eax
41ac02:	5f                   	pop    %edi
41ac03:	5e                   	pop    %esi
41ac04:	5b                   	pop    %ebx
41ac05:	5d                   	pop    %ebp
41ac06:	c2 0c 00             	ret    $0xc
41ac09:	8d 40 00             	lea    0x0(%eax),%eax
41ac0c:	55                   	push   %ebp
41ac0d:	8b ec                	mov    %esp,%ebp
41ac0f:	83 c4 d8             	add    $0xffffffd8,%esp
41ac12:	53                   	push   %ebx
41ac13:	56                   	push   %esi
41ac14:	57                   	push   %edi
41ac15:	8b 45 0c             	mov    0xc(%ebp),%eax
41ac18:	e8 8f aa fe ff       	call   0x4056ac
41ac1d:	33 c0                	xor    %eax,%eax
41ac1f:	55                   	push   %ebp
41ac20:	68 f9 ad 41 00       	push   $0x41adf9
41ac25:	64 ff 30             	push   %fs:(%eax)
41ac28:	64 89 20             	mov    %esp,%fs:(%eax)
41ac2b:	33 c0                	xor    %eax,%eax
41ac2d:	89 45 fc             	mov    %eax,-0x4(%ebp)
41ac30:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
41ac37:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
41ac3e:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
41ac45:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
41ac4c:	33 d2                	xor    %edx,%edx
41ac4e:	55                   	push   %ebp
41ac4f:	68 d2 ad 41 00       	push   $0x41add2
41ac54:	64 ff 32             	push   %fs:(%edx)
41ac57:	64 89 22             	mov    %esp,%fs:(%edx)
41ac5a:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41ac5e:	75 0b                	jne    0x41ac6b
41ac60:	81 7d 10 00 00 10 00 	cmpl   $0x100000,0x10(%ebp)
41ac67:	76 0d                	jbe    0x41ac76
41ac69:	eb 02                	jmp    0x41ac6d
41ac6b:	7e 09                	jle    0x41ac76
41ac6d:	c7 45 f4 00 00 10 00 	movl   $0x100000,-0xc(%ebp)
41ac74:	eb 06                	jmp    0x41ac7c
41ac76:	8b 45 10             	mov    0x10(%ebp),%eax
41ac79:	89 45 f4             	mov    %eax,-0xc(%ebp)
41ac7c:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ac7f:	e8 38 7a fe ff       	call   0x4026bc
41ac84:	89 45 f8             	mov    %eax,-0x8(%ebp)
41ac87:	33 d2                	xor    %edx,%edx
41ac89:	55                   	push   %ebp
41ac8a:	68 c1 ad 41 00       	push   $0x41adc1
41ac8f:	64 ff 32             	push   %fs:(%edx)
41ac92:	64 89 22             	mov    %esp,%fs:(%edx)
41ac95:	e9 cf 00 00 00       	jmp    0x41ad69
41ac9a:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41ac9e:	75 0b                	jne    0x41acab
41aca0:	81 7d 10 ff ff ff 7f 	cmpl   $0x7fffffff,0x10(%ebp)
41aca7:	76 0b                	jbe    0x41acb4
41aca9:	eb 02                	jmp    0x41acad
41acab:	7e 07                	jle    0x41acb4
41acad:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
41acb2:	eb 03                	jmp    0x41acb7
41acb4:	8b 75 10             	mov    0x10(%ebp),%esi
41acb7:	85 f6                	test   %esi,%esi
41acb9:	0f 8e aa 00 00 00    	jle    0x41ad69