41a7db:	8b 10                	mov    (%eax),%edx
41a7dd:	ff 52 44             	call   *0x44(%edx)
41a7e0:	c3                   	ret
41a7e1:	8d 40 00             	lea    0x0(%eax),%eax
41a7e4:	53                   	push   %ebx
41a7e5:	56                   	push   %esi
41a7e6:	84 d2                	test   %dl,%dl
41a7e8:	74 08                	je     0x41a7f2
41a7ea:	83 c4 f0             	add    $0xfffffff0,%esp
41a7ed:	e8 7a 8d fe ff       	call   0x40356c
41a7f2:	8b da                	mov    %edx,%ebx
41a7f4:	8b f0                	mov    %eax,%esi
41a7f6:	33 d2                	xor    %edx,%edx
41a7f8:	8b c6                	mov    %esi,%eax
41a7fa:	e8 dd f6 ff ff       	call   0x419edc
41a7ff:	b2 01                	mov    $0x1,%dl
41a801:	a1 88 18 41 00       	mov    0x411888,%eax
41a806:	e8 0d 8a fe ff       	call   0x403218
41a80b:	89 46 50             	mov    %eax,0x50(%esi)
41a80e:	8b c6                	mov    %esi,%eax
41a810:	84 db                	test   %bl,%bl
41a812:	74 0f                	je     0x41a823
41a814:	e8 ab 8d fe ff       	call   0x4035c4
41a819:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41a820:	83 c4 0c             	add    $0xc,%esp
41a823:	8b c6                	mov    %esi,%eax
41a825:	5e                   	pop    %esi
41a826:	5b                   	pop    %ebx
41a827:	c3                   	ret
41a828:	53                   	push   %ebx
41a829:	56                   	push   %esi
41a82a:	57                   	push   %edi
41a82b:	e8 a4 8d fe ff       	call   0x4035d4
41a830:	8b da                	mov    %edx,%ebx
41a832:	8b f8                	mov    %eax,%edi
41a834:	8b d3                	mov    %ebx,%edx
41a836:	80 e2 fc             	and    $0xfc,%dl
41a839:	8b c7                	mov    %edi,%eax
41a83b:	e8 e8 f6 ff ff       	call   0x419f28
41a840:	8b 47 30             	mov    0x30(%edi),%eax
41a843:	85 c0                	test   %eax,%eax
41a845:	74 19                	je     0x41a860
41a847:	8b d7                	mov    %edi,%edx
41a849:	e8 8e f9 ff ff       	call   0x41a1dc
41a84e:	eb 10                	jmp    0x41a860
41a850:	8b c6                	mov    %esi,%eax
41a852:	e8 0d 96 ff ff       	call   0x413e64
41a857:	8b d0                	mov    %eax,%edx
41a859:	8b c7                	mov    %edi,%eax
41a85b:	e8 08 01 00 00       	call   0x41a968
41a860:	8b 77 50             	mov    0x50(%edi),%esi
41a863:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
41a867:	7f e7                	jg     0x41a850
41a869:	8d 47 50             	lea    0x50(%edi),%eax
41a86c:	e8 db 26 ff ff       	call   0x40cf4c
41a871:	84 db                	test   %bl,%bl
41a873:	7e 07                	jle    0x41a87c
41a875:	8b c7                	mov    %edi,%eax
41a877:	e8 40 8d fe ff       	call   0x4035bc
41a87c:	5f                   	pop    %edi
41a87d:	5e                   	pop    %esi
41a87e:	5b                   	pop    %ebx
41a87f:	c3                   	ret
41a880:	33 c0                	xor    %eax,%eax
41a882:	c3                   	ret
41a883:	90                   	nop
41a884:	c3                   	ret
41a885:	8d 40 00             	lea    0x0(%eax),%eax
41a888:	53                   	push   %ebx
41a889:	56                   	push   %esi
41a88a:	57                   	push   %edi
41a88b:	8b d9                	mov    %ecx,%ebx
41a88d:	8b f2                	mov    %edx,%esi
41a88f:	8b f8                	mov    %eax,%edi
41a891:	8b cb                	mov    %ebx,%ecx
41a893:	8b d6                	mov    %esi,%edx
41a895:	8b c7                	mov    %edi,%eax
41a897:	e8 5c f9 ff ff       	call   0x41a1f8
41a89c:	80 fb 01             	cmp    $0x1,%bl
41a89f:	75 0a                	jne    0x41a8ab
41a8a1:	3b 77 30             	cmp    0x30(%edi),%esi
41a8a4:	75 05                	jne    0x41a8ab
41a8a6:	33 c0                	xor    %eax,%eax
41a8a8:	89 47 30             	mov    %eax,0x30(%edi)
41a8ab:	5f                   	pop    %edi
41a8ac:	5e                   	pop    %esi
41a8ad:	5b                   	pop    %ebx
41a8ae:	c3                   	ret
41a8af:	90                   	nop
41a8b0:	c3                   	ret
41a8b1:	8d 40 00             	lea    0x0(%eax),%eax
41a8b4:	53                   	push   %ebx
41a8b5:	66 83 78 42 00       	cmpw   $0x0,0x42(%eax)
41a8ba:	74 0e                	je     0x41a8ca
41a8bc:	8b d8                	mov    %eax,%ebx
41a8be:	8b d0                	mov    %eax,%edx
41a8c0:	8b 43 44             	mov    0x44(%ebx),%eax
41a8c3:	ff 53 40             	call   *0x40(%ebx)
41a8c6:	b0 01                	mov    $0x1,%al
41a8c8:	5b                   	pop    %ebx
41a8c9:	c3                   	ret
41a8ca:	33 c0                	xor    %eax,%eax
41a8cc:	5b                   	pop    %ebx
41a8cd:	c3                   	ret
41a8ce:	8b c0                	mov    %eax,%eax
41a8d0:	53                   	push   %ebx
41a8d1:	66 83 78 4a 00       	cmpw   $0x0,0x4a(%eax)
41a8d6:	74 0e                	je     0x41a8e6
41a8d8:	8b d8                	mov    %eax,%ebx
41a8da:	8b d0                	mov    %eax,%edx
41a8dc:	8b 43 4c             	mov    0x4c(%ebx),%eax
41a8df:	ff 53 48             	call   *0x48(%ebx)
41a8e2:	b0 01                	mov    $0x1,%al
41a8e4:	5b                   	pop    %ebx
41a8e5:	c3                   	ret
41a8e6:	33 c0                	xor    %eax,%eax
41a8e8:	5b                   	pop    %ebx
41a8e9:	c3                   	ret
41a8ea:	8b c0                	mov    %eax,%eax
41a8ec:	55                   	push   %ebp
41a8ed:	8b ec                	mov    %esp,%ebp
41a8ef:	53                   	push   %ebx
41a8f0:	56                   	push   %esi
41a8f1:	57                   	push   %edi
41a8f2:	8b d8                	mov    %eax,%ebx
41a8f4:	8b 45 08             	mov    0x8(%ebp),%eax
41a8f7:	3b 43 40             	cmp    0x40(%ebx),%eax
41a8fa:	75 08                	jne    0x41a904
41a8fc:	8b 45 0c             	mov    0xc(%ebp),%eax
41a8ff:	3b 43 44             	cmp    0x44(%ebx),%eax
41a902:	74 3a                	je     0x41a93e
41a904:	8b 43 50             	mov    0x50(%ebx),%eax
41a907:	8b 70 08             	mov    0x8(%eax),%esi
41a90a:	4e                   	dec    %esi
41a90b:	85 f6                	test   %esi,%esi
41a90d:	7c 1c                	jl     0x41a92b
41a90f:	46                   	inc    %esi
41a910:	33 ff                	xor    %edi,%edi
41a912:	ff 75 0c             	push   0xc(%ebp)
41a915:	ff 75 08             	push   0x8(%ebp)
41a918:	8b d7                	mov    %edi,%edx
41a91a:	8b 43 50             	mov    0x50(%ebx),%eax
41a91d:	e8 5a 94 ff ff       	call   0x413d7c
41a922:	8b 10                	mov    (%eax),%edx
41a924:	ff 52 10             	call   *0x10(%edx)
41a927:	47                   	inc    %edi
41a928:	4e                   	dec    %esi
41a929:	75 e7                	jne    0x41a912
41a92b:	8b 45 08             	mov    0x8(%ebp),%eax
41a92e:	89 43 40             	mov    %eax,0x40(%ebx)
41a931:	8b 45 0c             	mov    0xc(%ebp),%eax
41a934:	89 43 44             	mov    %eax,0x44(%ebx)
41a937:	8b c3                	mov    %ebx,%eax
41a939:	8b 10                	mov    (%eax),%edx
41a93b:	ff 52 30             	call   *0x30(%edx)
41a93e:	5f                   	pop    %edi
41a93f:	5e                   	pop    %esi
41a940:	5b                   	pop    %ebx
41a941:	5d                   	pop    %ebp
41a942:	c2 08 00             	ret    $0x8
41a945:	8d 40 00             	lea    0x0(%eax),%eax
41a948:	53                   	push   %ebx
41a949:	66 83 78 3a 00       	cmpw   $0x0,0x3a(%eax)
41a94e:	74 0a                	je     0x41a95a
41a950:	8b d8                	mov    %eax,%ebx
41a952:	8b d0                	mov    %eax,%edx
41a954:	8b 43 3c             	mov    0x3c(%ebx),%eax
41a957:	ff 53 38             	call   *0x38(%ebx)
41a95a:	5b                   	pop    %ebx
41a95b:	c3                   	ret
41a95c:	89 42 10             	mov    %eax,0x10(%edx)
41a95f:	8b 40 50             	mov    0x50(%eax),%eax
41a962:	e8 b9 92 ff ff       	call   0x413c20
41a967:	c3                   	ret
41a968:	53                   	push   %ebx
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