41aaa1:	8b d8                	mov    %eax,%ebx
41aaa3:	85 db                	test   %ebx,%ebx
41aaa5:	7c 0e                	jl     0x41aab5
41aaa7:	8b 45 08             	mov    0x8(%ebp),%eax
41aaaa:	8b d3                	mov    %ebx,%edx
41aaac:	8b 08                	mov    (%eax),%ecx
41aaae:	ff 51 18             	call   *0x18(%ecx)
41aab1:	8b f8                	mov    %eax,%edi
41aab3:	eb 02                	jmp    0x41aab7
41aab5:	33 ff                	xor    %edi,%edi
41aab7:	8b c7                	mov    %edi,%eax
41aab9:	5a                   	pop    %edx
41aaba:	5d                   	pop    %ebp
41aabb:	5f                   	pop    %edi
41aabc:	5e                   	pop    %esi
41aabd:	5b                   	pop    %ebx
41aabe:	c3                   	ret
41aabf:	90                   	nop
41aac0:	53                   	push   %ebx
41aac1:	56                   	push   %esi
41aac2:	57                   	push   %edi
41aac3:	55                   	push   %ebp
41aac4:	51                   	push   %ecx
41aac5:	8b ea                	mov    %edx,%ebp
41aac7:	8b f8                	mov    %eax,%edi
41aac9:	c6 04 24 01          	movb   $0x1,(%esp)
41aacd:	8b 47 0c             	mov    0xc(%edi),%eax
41aad0:	8b 58 08             	mov    0x8(%eax),%ebx
41aad3:	4b                   	dec    %ebx
41aad4:	85 db                	test   %ebx,%ebx
41aad6:	7c 1e                	jl     0x41aaf6
41aad8:	43                   	inc    %ebx
41aad9:	33 f6                	xor    %esi,%esi
41aadb:	8b 47 0c             	mov    0xc(%edi),%eax
41aade:	8b d6                	mov    %esi,%edx
41aae0:	e8 0b 13 00 00       	call   0x41bdf0
41aae5:	8b d0                	mov    %eax,%edx
41aae7:	8b c5                	mov    %ebp,%eax
41aae9:	e8 12 8b fe ff       	call   0x403600
41aaee:	84 c0                	test   %al,%al
41aaf0:	75 08                	jne    0x41aafa
41aaf2:	46                   	inc    %esi
41aaf3:	4b                   	dec    %ebx
41aaf4:	75 e5                	jne    0x41aadb
41aaf6:	c6 04 24 00          	movb   $0x0,(%esp)
41aafa:	8a 04 24             	mov    (%esp),%al
41aafd:	5a                   	pop    %edx
41aafe:	5d                   	pop    %ebp
41aaff:	5f                   	pop    %edi
41ab00:	5e                   	pop    %esi
41ab01:	5b                   	pop    %ebx
41ab02:	c3                   	ret
41ab03:	90                   	nop
41ab04:	55                   	push   %ebp
41ab05:	8b ec                	mov    %esp,%ebp
41ab07:	81 c4 f4 fe ff ff    	add    $0xfffffef4,%esp
41ab0d:	53                   	push   %ebx
41ab0e:	56                   	push   %esi
41ab0f:	33 c9                	xor    %ecx,%ecx
41ab11:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41ab14:	8b f2                	mov    %edx,%esi
41ab16:	8b d8                	mov    %eax,%ebx
41ab18:	33 c0                	xor    %eax,%eax
41ab1a:	55                   	push   %ebp
41ab1b:	68 9f ab 41 00       	push   $0x41ab9f
41ab20:	64 ff 30             	push   %fs:(%eax)
41ab23:	64 89 20             	mov    %esp,%fs:(%eax)
41ab26:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
41ab2c:	8b c6                	mov    %esi,%eax
41ab2e:	e8 09 88 fe ff       	call   0x40333c
41ab33:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
41ab39:	8d 45 fc             	lea    -0x4(%ebp),%eax
41ab3c:	e8 87 98 fe ff       	call   0x4043c8
41ab41:	8b 55 fc             	mov    -0x4(%ebp),%edx
41ab44:	8b c3                	mov    %ebx,%eax
41ab46:	e8 15 ff ff ff       	call   0x41aa60
41ab4b:	85 c0                	test   %eax,%eax
41ab4d:	74 30                	je     0x41ab7f
41ab4f:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ab52:	89 85 f4 fe ff ff    	mov    %eax,-0x10c(%ebp)
41ab58:	c6 85 f8 fe ff ff 0b 	movb   $0xb,-0x108(%ebp)
41ab5f:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
41ab65:	50                   	push   %eax
41ab66:	6a 00                	push   $0x0
41ab68:	8b 0d 38 b3 49 00    	mov    0x49b338,%ecx
41ab6e:	b2 01                	mov    $0x1,%dl
41ab70:	a1 d4 91 41 00       	mov    0x4191d4,%eax
41ab75:	e8 b6 19 ff ff       	call   0x40c530
41ab7a:	e8 21 90 fe ff       	call   0x403ba0
41ab7f:	8b d6                	mov    %esi,%edx
41ab81:	8b 43 04             	mov    0x4(%ebx),%eax
41ab84:	e8 0b 11 00 00       	call   0x41bc94
41ab89:	33 c0                	xor    %eax,%eax
41ab8b:	5a                   	pop    %edx
41ab8c:	59                   	pop    %ecx
41ab8d:	59                   	pop    %ecx
41ab8e:	64 89 10             	mov    %edx,%fs:(%eax)
41ab91:	68 a6 ab 41 00       	push   $0x41aba6
41ab96:	8d 45 fc             	lea    -0x4(%ebp),%eax
41ab99:	e8 c6 95 fe ff       	call   0x404164
41ab9e:	c3                   	ret
41ab9f:	e9 c4 8f fe ff       	jmp    0x403b68
41aba4:	eb f0                	jmp    0x41ab96
41aba6:	5e                   	pop    %esi
41aba7:	5b                   	pop    %ebx
41aba8:	8b e5                	mov    %ebp,%esp
41abaa:	5d                   	pop    %ebp
41abab:	c3                   	ret
41abac:	53                   	push   %ebx
41abad:	56                   	push   %esi
41abae:	8b f2                	mov    %edx,%esi
41abb0:	8b d8                	mov    %eax,%ebx
41abb2:	8b d6                	mov    %esi,%edx
41abb4:	8b 43 04             	mov    0x4(%ebx),%eax
41abb7:	e8 90 12 00 00       	call   0x41be4c
41abbc:	85 c0                	test   %eax,%eax
41abbe:	0f 9d c0             	setge  %al
41abc1:	5e                   	pop    %esi
41abc2:	5b                   	pop    %ebx
41abc3:	c3                   	ret
41abc4:	53                   	push   %ebx
41abc5:	56                   	push   %esi
41abc6:	8b da                	mov    %edx,%ebx
41abc8:	8b f0                	mov    %eax,%esi
41abca:	85 db                	test   %ebx,%ebx
41abcc:	74 10                	je     0x41abde
41abce:	8b c6                	mov    %esi,%eax
41abd0:	e8 57 ab fe ff       	call   0x40572c
41abd5:	3b d8                	cmp    %eax,%ebx
41abd7:	74 05                	je     0x41abde
41abd9:	33 c0                	xor    %eax,%eax
41abdb:	5e                   	pop    %esi
41abdc:	5b                   	pop    %ebx
41abdd:	c3                   	ret
41abde:	b0 01                	mov    $0x1,%al
41abe0:	5e                   	pop    %esi
41abe1:	5b                   	pop    %ebx
41abe2:	c3                   	ret
41abe3:	90                   	nop
41abe4:	53                   	push   %ebx
41abe5:	56                   	push   %esi
41abe6:	57                   	push   %edi
41abe7:	8b fa                	mov    %edx,%edi
41abe9:	8b f0                	mov    %eax,%esi
41abeb:	8b 46 0c             	mov    0xc(%esi),%eax
41abee:	8b 58 08             	mov    0x8(%eax),%ebx
41abf1:	4b                   	dec    %ebx
41abf2:	83 fb 00             	cmp    $0x0,%ebx
41abf5:	7c 25                	jl     0x41ac1c
41abf7:	8b d3                	mov    %ebx,%edx
41abf9:	8b 46 0c             	mov    0xc(%esi),%eax
41abfc:	e8 ef 11 00 00       	call   0x41bdf0
41ac01:	8b d7                	mov    %edi,%edx
41ac03:	e8 bc ff ff ff       	call   0x41abc4
41ac08:	84 c0                	test   %al,%al
41ac0a:	74 0a                	je     0x41ac16
41ac0c:	8b d3                	mov    %ebx,%edx
41ac0e:	8b 46 0c             	mov    0xc(%esi),%eax
41ac11:	e8 ca 10 00 00       	call   0x41bce0
41ac16:	4b                   	dec    %ebx
41ac17:	83 fb ff             	cmp    $0xffffffff,%ebx
41ac1a:	75 db                	jne    0x41abf7
41ac1c:	8b 46 04             	mov    0x4(%esi),%eax
41ac1f:	8b 58 08             	mov    0x8(%eax),%ebx
41ac22:	4b                   	dec    %ebx
41ac23:	83 fb 00             	cmp    $0x0,%ebx
41ac26:	7c 25                	jl     0x41ac4d
41ac28:	8b d3                	mov    %ebx,%edx
41ac2a:	8b 46 04             	mov    0x4(%esi),%eax
41ac2d:	e8 be 11 00 00       	call   0x41bdf0
41ac32:	8b d7                	mov    %edi,%edx
41ac34:	e8 8b ff ff ff       	call   0x41abc4
41ac39:	84 c0                	test   %al,%al
41ac3b:	74 0a                	je     0x41ac47
41ac3d:	8b d3                	mov    %ebx,%edx
41ac3f:	8b 46 04             	mov    0x4(%esi),%eax
41ac42:	e8 99 10 00 00       	call   0x41bce0
41ac47:	4b                   	dec    %ebx
41ac48:	83 fb ff             	cmp    $0xffffffff,%ebx
41ac4b:	75 db                	jne    0x41ac28
41ac4d:	8b 46 08             	mov    0x8(%esi),%eax
41ac50:	8b 10                	mov    (%eax),%edx
41ac52:	ff 52 14             	call   *0x14(%edx)
41ac55:	8b d8                	mov    %eax,%ebx
41ac57:	4b                   	dec    %ebx
41ac58:	83 fb 00             	cmp    $0x0,%ebx
41ac5b:	7c 25                	jl     0x41ac82
41ac5d:	8b d3                	mov    %ebx,%edx
41ac5f:	8b 46 08             	mov    0x8(%esi),%eax
41ac62:	8b 08                	mov    (%eax),%ecx
41ac64:	ff 51 18             	call   *0x18(%ecx)
41ac67:	8b d7                	mov    %edi,%edx
41ac69:	e8 56 ff ff ff       	call   0x41abc4
41ac6e:	84 c0                	test   %al,%al
41ac70:	74 0a                	je     0x41ac7c
41ac72:	8b d3                	mov    %ebx,%edx
41ac74:	8b 46 08             	mov    0x8(%esi),%eax
41ac77:	8b 08                	mov    (%eax),%ecx
41ac79:	ff 51 48             	call   *0x48(%ecx)
41ac7c:	4b                   	dec    %ebx
41ac7d:	83 fb ff             	cmp    $0xffffffff,%ebx
41ac80:	75 db                	jne    0x41ac5d
41ac82:	5f                   	pop    %edi
41ac83:	5e                   	pop    %esi
41ac84:	5b                   	pop    %ebx
41ac85:	c3                   	ret
41ac86:	8b c0                	mov    %eax,%eax
41ac88:	53                   	push   %ebx
41ac89:	56                   	push   %esi
41ac8a:	57                   	push   %edi
41ac8b:	55                   	push   %ebp
41ac8c:	51                   	push   %ecx
41ac8d:	89 14 24             	mov    %edx,(%esp)
41ac90:	8b f8                	mov    %eax,%edi
41ac92:	8b 47 20             	mov    0x20(%edi),%eax
41ac95:	3b 04 24             	cmp    (%esp),%eax
41ac98:	74 31                	je     0x41accb
41ac9a:	8b 04 24             	mov    (%esp),%eax
41ac9d:	89 47 20             	mov    %eax,0x20(%edi)
41aca0:	8b 47 04             	mov    0x4(%edi),%eax
41aca3:	8b 70 08             	mov    0x8(%eax),%esi
41aca6:	4e                   	dec    %esi
41aca7:	85 f6                	test   %esi,%esi
41aca9:	7c 20                	jl     0x41accb
41acab:	46                   	inc    %esi
41acac:	33 ed                	xor    %ebp,%ebp
41acae:	8b 47 04             	mov    0x4(%edi),%eax
41acb1:	8b d5                	mov    %ebp,%edx
41acb3:	e8 38 11 00 00       	call   0x41bdf0
41acb8:	8b d8                	mov    %eax,%ebx
41acba:	8b 14 24             	mov    (%esp),%edx
41acbd:	8b c3                	mov    %ebx,%eax
41acbf:	e8 fc fd ff ff       	call   0x41aac0
41acc4:	88 43 10             	mov    %al,0x10(%ebx)
41acc7:	45                   	inc    %ebp
41acc8:	4e                   	dec    %esi
41acc9:	75 e3                	jne    0x41acae
41accb:	5a                   	pop    %edx
41accc:	5d                   	pop    %ebp
41accd:	5f                   	pop    %edi
41acce:	5e                   	pop    %esi
41accf:	5b                   	pop    %ebx
41acd0:	c3                   	ret
41acd1:	8d 40 00             	lea    0x0(%eax),%eax
41acd4:	53                   	push   %ebx
41acd5:	56                   	push   %esi
41acd6:	57                   	push   %edi
41acd7:	84 d2                	test   %dl,%dl
41acd9:	74 08                	je     0x41ace3
41acdb:	83 c4 f0             	add    $0xfffffff0,%esp
41acde:	e8 55 8a fe ff       	call   0x403738
41ace3:	8b da                	mov    %edx,%ebx
41ace5:	8b f8                	mov    %eax,%edi
41ace7:	33 d2                	xor    %edx,%edx
41ace9:	8b c7                	mov    %edi,%eax
41aceb:	e8 cc 86 fe ff       	call   0x4033bc
41acf0:	b2 01                	mov    $0x1,%dl
41acf2:	a1 bc 95 41 00       	mov    0x4195bc,%eax
41acf7:	e8 c0 86 fe ff       	call   0x4033bc
41acfc:	89 47 04             	mov    %eax,0x4(%edi)
41acff:	8d 47 08             	lea    0x8(%edi),%eax
41ad02:	50                   	push   %eax
41ad03:	e8 98 bb fe ff       	call   0x4068a0
41ad08:	8b 0d cc 96 41 00    	mov    0x4196cc,%ecx
41ad0e:	b2 01                	mov    $0x1,%dl
41ad10:	a1 18 a8 41 00       	mov    0x41a818,%eax
41ad15:	e8 8a fc ff ff       	call   0x41a9a4
41ad1a:	8b f0                	mov    %eax,%esi
41ad1c:	8b 47 04             	mov    0x4(%edi),%eax
41ad1f:	8b d6                	mov    %esi,%edx
41ad21:	e8 6e 0f 00 00       	call   0x41bc94
41ad26:	c6 46 10 01          	movb   $0x1,0x10(%esi)
41ad2a:	8b c7                	mov    %edi,%eax
41ad2c:	84 db                	test   %bl,%bl
41ad2e:	74 0f                	je     0x41ad3f
41ad30:	e8 5b 8a fe ff       	call   0x403790
41ad35:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41ad3c:	83 c4 0c             	add    $0xc,%esp
41ad3f:	8b c7                	mov    %edi,%eax
41ad41:	5f                   	pop    %edi
41ad42:	5e                   	pop    %esi
41ad43:	5b                   	pop    %ebx
41ad44:	c3                   	ret
41ad45:	8d 40 00             	lea    0x0(%eax),%eax
41ad48:	53                   	push   %ebx
41ad49:	56                   	push   %esi
41ad4a:	57                   	push   %edi
41ad4b:	55                   	push   %ebp
41ad4c:	e8 4f 8a fe ff       	call   0x4037a0
41ad51:	8b da                	mov    %edx,%ebx
41ad53:	8b f0                	mov    %eax,%esi
41ad55:	8d 46 08             	lea    0x8(%esi),%eax
41ad58:	50                   	push   %eax
41ad59:	e8 ca b9 fe ff       	call   0x406728
41ad5e:	8b 46 04             	mov    0x4(%esi),%eax
41ad61:	8b 68 08             	mov    0x8(%eax),%ebp
41ad64:	4d                   	dec    %ebp
41ad65:	85 ed                	test   %ebp,%ebp
41ad67:	7c 16                	jl     0x41ad7f
41ad69:	45                   	inc    %ebp
41ad6a:	33 ff                	xor    %edi,%edi
41ad6c:	8b 46 04             	mov    0x4(%esi),%eax
41ad6f:	8b d7                	mov    %edi,%edx
41ad71:	e8 7a 10 00 00       	call   0x41bdf0
41ad76:	e8 71 86 fe ff       	call   0x4033ec
41ad7b:	47                   	inc    %edi
41ad7c:	4d                   	dec    %ebp
41ad7d:	75 ed                	jne    0x41ad6c
41ad7f:	8b 46 04             	mov    0x4(%esi),%eax
41ad82:	e8 65 86 fe ff       	call   0x4033ec
41ad87:	8b d3                	mov    %ebx,%edx
41ad89:	80 e2 fc             	and    $0xfc,%dl
41ad8c:	8b c6                	mov    %esi,%eax
41ad8e:	e8 49 86 fe ff       	call   0x4033dc
41ad93:	84 db                	test   %bl,%bl
41ad95:	7e 07                	jle    0x41ad9e
41ad97:	8b c6                	mov    %esi,%eax
41ad99:	e8 ea 89 fe ff       	call   0x403788
41ad9e:	5d                   	pop    %ebp
41ad9f:	5f                   	pop    %edi
41ada0:	5e                   	pop    %esi
41ada1:	5b                   	pop    %ebx
41ada2:	c3                   	ret
41ada3:	90                   	nop
41ada4:	53                   	push   %ebx
41ada5:	56                   	push   %esi
41ada6:	57                   	push   %edi
41ada7:	55                   	push   %ebp
41ada8:	51                   	push   %ecx
41ada9:	89 14 24             	mov    %edx,(%esp)
41adac:	8b e8                	mov    %eax,%ebp
41adae:	33 f6                	xor    %esi,%esi
41adb0:	8b 45 04             	mov    0x4(%ebp),%eax
41adb3:	8b 58 08             	mov    0x8(%eax),%ebx
41adb6:	4b                   	dec    %ebx
41adb7:	85 db                	test   %ebx,%ebx
41adb9:	7c 25                	jl     0x41ade0
41adbb:	43                   	inc    %ebx
41adbc:	33 ff                	xor    %edi,%edi
41adbe:	8b 45 04             	mov    0x4(%ebp),%eax
41adc1:	8b d7                	mov    %edi,%edx
41adc3:	e8 28 10 00 00       	call   0x41bdf0
41adc8:	8b 14 24             	mov    (%esp),%edx
41adcb:	52                   	push   %edx
41adcc:	8b ce                	mov    %esi,%ecx
41adce:	8b d0                	mov    %eax,%edx
41add0:	a1 18 a8 41 00       	mov    0x41a818,%eax
41add5:	e8 5a fb ff ff       	call   0x41a934
41adda:	8b f0                	mov    %eax,%esi
41addc:	47                   	inc    %edi