41aa4c:	e8 a3 8e fe ff       	call   0x4038f4
41aa51:	4b                   	dec    %ebx
41aa52:	83 fb ff             	cmp    $0xffffffff,%ebx
41aa55:	75 bc                	jne    0x41aa13
41aa57:	33 c0                	xor    %eax,%eax
41aa59:	5a                   	pop    %edx
41aa5a:	59                   	pop    %ecx
41aa5b:	59                   	pop    %ecx
41aa5c:	64 89 10             	mov    %edx,%fs:(%eax)
41aa5f:	68 76 aa 41 00       	push   $0x41aa76
41aa64:	a1 e4 12 47 00       	mov    0x4712e4,%eax
41aa69:	e8 d6 d4 ff ff       	call   0x417f44
41aa6e:	c3                   	ret
41aa6f:	e9 14 96 fe ff       	jmp    0x404088
41aa74:	eb ee                	jmp    0x41aa64
41aa76:	5f                   	pop    %edi
41aa77:	5e                   	pop    %esi
41aa78:	5b                   	pop    %ebx
41aa79:	59                   	pop    %ecx
41aa7a:	59                   	pop    %ecx
41aa7b:	5d                   	pop    %ebp
41aa7c:	c3                   	ret
41aa7d:	8d 40 00             	lea    0x0(%eax),%eax
41aa80:	55                   	push   %ebp
41aa81:	8b ec                	mov    %esp,%ebp
41aa83:	51                   	push   %ecx
41aa84:	53                   	push   %ebx
41aa85:	56                   	push   %esi
41aa86:	57                   	push   %edi
41aa87:	89 45 fc             	mov    %eax,-0x4(%ebp)
41aa8a:	83 3d e4 12 47 00 00 	cmpl   $0x0,0x4712e4
41aa91:	74 6b                	je     0x41aafe
41aa93:	a1 e4 12 47 00       	mov    0x4712e4,%eax
41aa98:	e8 43 d4 ff ff       	call   0x417ee0
41aa9d:	8b f8                	mov    %eax,%edi
41aa9f:	33 c0                	xor    %eax,%eax
41aaa1:	55                   	push   %ebp
41aaa2:	68 f7 aa 41 00       	push   $0x41aaf7
41aaa7:	64 ff 30             	push   %fs:(%eax)
41aaaa:	64 89 20             	mov    %esp,%fs:(%eax)
41aaad:	8b 5f 08             	mov    0x8(%edi),%ebx
41aab0:	4b                   	dec    %ebx
41aab1:	83 fb 00             	cmp    $0x0,%ebx
41aab4:	7c 29                	jl     0x41aadf
41aab6:	8b d3                	mov    %ebx,%edx
41aab8:	8b c7                	mov    %edi,%eax
41aaba:	e8 b1 d0 ff ff       	call   0x417b70
41aabf:	8b f0                	mov    %eax,%esi
41aac1:	8b 46 04             	mov    0x4(%esi),%eax
41aac4:	3b 45 fc             	cmp    -0x4(%ebp),%eax
41aac7:	75 10                	jne    0x41aad9
41aac9:	8b d3                	mov    %ebx,%edx
41aacb:	8b c7                	mov    %edi,%eax
41aacd:	e8 8a cf ff ff       	call   0x417a5c
41aad2:	8b c6                	mov    %esi,%eax
41aad4:	e8 1b 8e fe ff       	call   0x4038f4
41aad9:	4b                   	dec    %ebx
41aada:	83 fb ff             	cmp    $0xffffffff,%ebx
41aadd:	75 d7                	jne    0x41aab6
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:	68 fe aa 41 00       	push   $0x41aafe
41aaec:	a1 e4 12 47 00       	mov    0x4712e4,%eax
41aaf1:	e8 4e d4 ff ff       	call   0x417f44
41aaf6:	c3                   	ret
41aaf7:	e9 8c 95 fe ff       	jmp    0x404088
41aafc:	eb ee                	jmp    0x41aaec
41aafe:	5f                   	pop    %edi
41aaff:	5e                   	pop    %esi
41ab00:	5b                   	pop    %ebx
41ab01:	59                   	pop    %ecx
41ab02:	5d                   	pop    %ebp
41ab03:	c3                   	ret
41ab04:	53                   	push   %ebx
41ab05:	8b d8                	mov    %eax,%ebx
41ab07:	8b cb                	mov    %ebx,%ecx
41ab09:	b2 01                	mov    $0x1,%dl
41ab0b:	a1 34 54 41 00       	mov    0x415434,%eax
41ab10:	e8 e3 17 ff ff       	call   0x40c2f8
41ab15:	e8 4e 96 fe ff       	call   0x404168
41ab1a:	5b                   	pop    %ebx
41ab1b:	c3                   	ret
41ab1c:	a1 5c d6 46 00       	mov    0x46d65c,%eax
41ab21:	e8 de ff ff ff       	call   0x41ab04
41ab26:	c3                   	ret
41ab27:	90                   	nop
41ab28:	53                   	push   %ebx
41ab29:	83 c4 f8             	add    $0xfffffff8,%esp
41ab2c:	8b d8                	mov    %eax,%ebx
41ab2e:	89 1c 24             	mov    %ebx,(%esp)
41ab31:	c6 44 24 04 0b       	movb   $0xb,0x4(%esp)
41ab36:	54                   	push   %esp
41ab37:	6a 00                	push   $0x0
41ab39:	8b 0d 58 d4 46 00    	mov    0x46d458,%ecx
41ab3f:	b2 01                	mov    $0x1,%dl
41ab41:	a1 34 54 41 00       	mov    0x415434,%eax
41ab46:	e8 e9 17 ff ff       	call   0x40c334
41ab4b:	e8 18 96 fe ff       	call   0x404168
41ab50:	59                   	pop    %ecx
41ab51:	5a                   	pop    %edx
41ab52:	5b                   	pop    %ebx
41ab53:	c3                   	ret
41ab54:	53                   	push   %ebx
41ab55:	e8 3e 9f ff ff       	call   0x414a98
41ab5a:	8b d8                	mov    %eax,%ebx
41ab5c:	83 fb ff             	cmp    $0xffffffff,%ebx
41ab5f:	75 05                	jne    0x41ab66
41ab61:	e8 b6 ff ff ff       	call   0x41ab1c
41ab66:	8b c3                	mov    %ebx,%eax
41ab68:	5b                   	pop    %ebx
41ab69:	c3                   	ret
41ab6a:	8b c0                	mov    %eax,%eax
41ab6c:	53                   	push   %ebx
41ab6d:	56                   	push   %esi
41ab6e:	57                   	push   %edi
41ab6f:	e8 4c 91 fe ff       	call   0x403cc0
41ab74:	8b da                	mov    %edx,%ebx
41ab76:	8b f0                	mov    %eax,%esi
41ab78:	8b 56 10             	mov    0x10(%esi),%edx
41ab7b:	2b 56 14             	sub    0x14(%esi),%edx
41ab7e:	8b 46 04             	mov    0x4(%esi),%eax
41ab81:	66 b9 01 00          	mov    $0x1,%cx
41ab85:	8b 38                	mov    (%eax),%edi
41ab87:	ff 57 14             	call   *0x14(%edi)
41ab8a:	8b d3                	mov    %ebx,%edx
41ab8c:	80 e2 fc             	and    $0xfc,%dl
41ab8f:	8b c6                	mov    %esi,%eax
41ab91:	e8 ee f8 ff ff       	call   0x41a484
41ab96:	84 db                	test   %bl,%bl
41ab98:	7e 07                	jle    0x41aba1
41ab9a:	8b c6                	mov    %esi,%eax
41ab9c:	e8 c7 90 fe ff       	call   0x403c68
41aba1:	5f                   	pop    %edi
41aba2:	5e                   	pop    %esi
41aba3:	5b                   	pop    %ebx
41aba4:	c3                   	ret
41aba5:	8d 40 00             	lea    0x0(%eax),%eax
41aba8:	53                   	push   %ebx
41aba9:	56                   	push   %esi
41abaa:	8b da                	mov    %edx,%ebx
41abac:	8b f0                	mov    %eax,%esi
41abae:	8b c6                	mov    %esi,%eax
41abb0:	e8 6b 20 00 00       	call   0x41cc20
41abb5:	3a d8                	cmp    %al,%bl
41abb7:	74 0f                	je     0x41abc8
41abb9:	ff 4e 10             	decl   0x10(%esi)
41abbc:	8b c6                	mov    %esi,%eax
41abbe:	e8 6d 21 00 00       	call   0x41cd30
41abc3:	e8 54 ff ff ff       	call   0x41ab1c
41abc8:	5e                   	pop    %esi
41abc9:	5b                   	pop    %ebx
41abca:	c3                   	ret
41abcb:	90                   	nop
41abcc:	55                   	push   %ebp
41abcd:	8b ec                	mov    %esp,%ebp
41abcf:	53                   	push   %ebx
41abd0:	56                   	push   %esi
41abd1:	8b f2                	mov    %edx,%esi
41abd3:	8b d8                	mov    %eax,%ebx
41abd5:	8b 93 80 00 00 00    	mov    0x80(%ebx),%edx
41abdb:	8b c6                	mov    %esi,%eax
41abdd:	e8 36 dd fe ff       	call   0x408918
41abe2:	84 c0                	test   %al,%al
41abe4:	74 1a                	je     0x41ac00
41abe6:	66 83 7d 12 00       	cmpw   $0x0,0x12(%ebp)
41abeb:	74 13                	je     0x41ac00
41abed:	8b d3                	mov    %ebx,%edx
41abef:	8b 45 14             	mov    0x14(%ebp),%eax
41abf2:	ff 55 10             	call   *0x10(%ebp)
41abf5:	8d 83 80 00 00 00    	lea    0x80(%ebx),%eax
41abfb:	e8 20 9b fe ff       	call   0x404720
41ac00:	5e                   	pop    %esi
41ac01:	5b                   	pop    %ebx
41ac02:	5d                   	pop    %ebp
41ac03:	c2 10 00             	ret    $0x10
41ac06:	8b c0                	mov    %eax,%eax
41ac08:	55                   	push   %ebp
41ac09:	8b ec                	mov    %esp,%ebp
41ac0b:	83 c4 f4             	add    $0xfffffff4,%esp
41ac0e:	53                   	push   %ebx
41ac0f:	8b da                	mov    %edx,%ebx
41ac11:	89 45 fc             	mov    %eax,-0x4(%ebp)
41ac14:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ac17:	8b 90 80 00 00 00    	mov    0x80(%eax),%edx
41ac1d:	8b c3                	mov    %ebx,%eax
41ac1f:	e8 f4 dc fe ff       	call   0x408918
41ac24:	84 c0                	test   %al,%al
41ac26:	0f 84 ba 00 00 00    	je     0x41ace6
41ac2c:	66 83 7d 12 00       	cmpw   $0x0,0x12(%ebp)
41ac31:	0f 84 af 00 00 00    	je     0x41ace6
41ac37:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ac3a:	e8 e1 1f 00 00       	call   0x41cc20
41ac3f:	3c 0a                	cmp    $0xa,%al
41ac41:	74 1d                	je     0x41ac60
41ac43:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ac46:	ff 48 10             	decl   0x10(%eax)
41ac49:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ac4c:	e8 df 20 00 00       	call   0x41cd30
41ac51:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ac54:	c6 80 88 00 00 00 01 	movb   $0x1,0x88(%eax)
41ac5b:	e8 bc fe ff ff       	call   0x41ab1c
41ac60:	b2 01                	mov    $0x1,%dl
41ac62:	a1 ec 5e 41 00       	mov    0x415eec,%eax
41ac67:	e8 58 8c fe ff       	call   0x4038c4
41ac6c:	89 45 f8             	mov    %eax,-0x8(%ebp)
41ac6f:	33 c0                	xor    %eax,%eax
41ac71:	55                   	push   %ebp
41ac72:	68 d2 ac 41 00       	push   $0x41acd2
41ac77:	64 ff 30             	push   %fs:(%eax)
41ac7a:	64 89 20             	mov    %esp,%fs:(%eax)
41ac7d:	8d 55 f4             	lea    -0xc(%ebp),%edx
41ac80:	b9 04 00 00 00       	mov    $0x4,%ecx
41ac85:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ac88:	e8 7f 04 00 00       	call   0x41b10c
41ac8d:	8b 55 f4             	mov    -0xc(%ebp),%edx
41ac90:	8b 45 f8             	mov    -0x8(%ebp),%eax
41ac93:	8b 08                	mov    (%eax),%ecx
41ac95:	ff 51 04             	call   *0x4(%ecx)
41ac98:	8b 45 f8             	mov    -0x8(%ebp),%eax
41ac9b:	8b 50 04             	mov    0x4(%eax),%edx
41ac9e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41aca1:	8b 45 fc             	mov    -0x4(%ebp),%eax
41aca4:	e8 63 04 00 00       	call   0x41b10c
41aca9:	8b 45 fc             	mov    -0x4(%ebp),%eax
41acac:	c6 80 88 00 00 00 01 	movb   $0x1,0x88(%eax)
41acb3:	8b 55 f8             	mov    -0x8(%ebp),%edx
41acb6:	8b 45 14             	mov    0x14(%ebp),%eax
41acb9:	ff 55 10             	call   *0x10(%ebp)
41acbc:	33 c0                	xor    %eax,%eax
41acbe:	5a                   	pop    %edx
41acbf:	59                   	pop    %ecx
41acc0:	59                   	pop    %ecx
41acc1:	64 89 10             	mov    %edx,%fs:(%eax)
41acc4:	68 d9 ac 41 00       	push   $0x41acd9
41acc9:	8b 45 f8             	mov    -0x8(%ebp),%eax
41accc:	e8 23 8c fe ff       	call   0x4038f4
41acd1:	c3                   	ret
41acd2:	e9 b1 93 fe ff       	jmp    0x404088
41acd7:	eb f0                	jmp    0x41acc9
41acd9:	8b 45 fc             	mov    -0x4(%ebp),%eax
41acdc:	05 80 00 00 00       	add    $0x80,%eax
41ace1:	e8 3a 9a fe ff       	call   0x404720
41ace6:	5b                   	pop    %ebx
41ace7:	8b e5                	mov    %ebp,%esp
41ace9:	5d                   	pop    %ebp
41acea:	c2 10 00             	ret    $0x10
41aced:	8d 40 00             	lea    0x0(%eax),%eax
41acf0:	53                   	push   %ebx
41acf1:	8b d8                	mov    %eax,%ebx
41acf3:	8b c3                	mov    %ebx,%eax
41acf5:	e8 26 1f 00 00       	call   0x41cc20
41acfa:	84 c0                	test   %al,%al
41acfc:	0f 94 c0             	sete   %al
41acff:	ff 4b 10             	decl   0x10(%ebx)
41ad02:	5b                   	pop    %ebx
41ad03:	c3                   	ret
41ad04:	53                   	push   %ebx
41ad05:	51                   	push   %ecx
41ad06:	c6 04 24 00          	movb   $0x0,(%esp)
41ad0a:	66 83 78 62 00       	cmpw   $0x0,0x62(%eax)
41ad0f:	74 0d                	je     0x41ad1e
41ad11:	54                   	push   %esp
41ad12:	8b d8                	mov    %eax,%ebx
41ad14:	8b ca                	mov    %edx,%ecx
41ad16:	8b d0                	mov    %eax,%edx
41ad18:	8b 43 64             	mov    0x64(%ebx),%eax
41ad1b:	ff 53 60             	call   *0x60(%ebx)
41ad1e:	0f b6 04 24          	movzbl (%esp),%eax
41ad22:	5a                   	pop    %edx
41ad23:	5b                   	pop    %ebx
41ad24:	c3                   	ret
41ad25:	8d 40 00             	lea    0x0(%eax),%eax
41ad28:	55                   	push   %ebp
41ad29:	8b ec                	mov    %esp,%ebp
41ad2b:	81 c4 f4 fe ff ff    	add    $0xfffffef4,%esp
41ad31:	53                   	push   %ebx
41ad32:	56                   	push   %esi
41ad33:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41ad36:	89 55 fc             	mov    %edx,-0x4(%ebp)
41ad39:	8b d8                	mov    %eax,%ebx
41ad3b:	8b 75 08             	mov    0x8(%ebp),%esi
41ad3e:	66 83 7b 42 00       	cmpw   $0x0,0x42(%ebx)
41ad43:	74 44                	je     0x41ad89
41ad45:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
41ad4b:	8b 55 f8             	mov    -0x8(%ebp),%edx
41ad4e:	b9 ff 00 00 00       	mov    $0xff,%ecx
41ad53:	e8 64 9c fe ff       	call   0x4049bc
41ad58:	8d 95 f4 fe ff ff    	lea    -0x10c(%ebp),%edx
41ad5e:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ad61:	8b 00                	mov    (%eax),%eax
41ad63:	e8 10 8e fe ff       	call   0x403b78
41ad68:	89 06                	mov    %eax,(%esi)
41ad6a:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ad6d:	89 46 04             	mov    %eax,0x4(%esi)
41ad70:	83 3e 00             	cmpl   $0x0,(%esi)
41ad73:	0f 94 45 f7          	sete   -0x9(%ebp)
41ad77:	56                   	push   %esi
41ad78:	8d 45 f7             	lea    -0x9(%ebp),%eax
41ad7b:	50                   	push   %eax
41ad7c:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41ad7f:	8b d3                	mov    %ebx,%edx
41ad81:	8b 43 44             	mov    0x44(%ebx),%eax
41ad84:	ff 53 40             	call   *0x40(%ebx)
41ad87:	eb 04                	jmp    0x41ad8d
41ad89:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
41ad8d:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
41ad91:	74 15                	je     0x41ada8
41ad93:	8b 45 fc             	mov    -0x4(%ebp),%eax
41ad96:	89 46 04             	mov    %eax,0x4(%esi)
41ad99:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41ad9c:	8b 55 fc             	mov    -0x4(%ebp),%edx
41ad9f:	8b c3                	mov    %ebx,%eax
41ada1:	8b 18                	mov    (%eax),%ebx
41ada3:	ff 53 1c             	call   *0x1c(%ebx)
41ada6:	89 06                	mov    %eax,(%esi)
41ada8:	5e                   	pop    %esi
41ada9:	5b                   	pop    %ebx
41adaa:	8b e5                	mov    %ebp,%esp
41adac:	5d                   	pop    %ebp
41adad:	c2 04 00             	ret    $0x4
41adb0:	53                   	push   %ebx
41adb1:	56                   	push   %esi
41adb2:	57                   	push   %edi
41adb3:	81 c4 f8 fe ff ff    	add    $0xfffffef8,%esp
41adb9:	8b f1                	mov    %ecx,%esi
41adbb:	8b fa                	mov    %edx,%edi
41adbd:	8b d8                	mov    %eax,%ebx
41adbf:	8d 44 24 08          	lea    0x8(%esp),%eax
41adc3:	8b d6                	mov    %esi,%edx
41adc5:	b9 ff 00 00 00       	mov    $0xff,%ecx
41adca:	e8 ed 9b fe ff       	call   0x4049bc
41adcf:	8d 54 24 08          	lea    0x8(%esp),%edx
41add3:	8b 07                	mov    (%edi),%eax
41add5:	e8 9e 8d fe ff       	call   0x403b78
41adda:	89 04 24             	mov    %eax,(%esp)
41addd:	83 3c 24 00          	cmpl   $0x0,(%esp)
41ade1:	0f 94 44 24 04       	sete   0x4(%esp)
41ade6:	66 83 7b 3a 00       	cmpw   $0x0,0x3a(%ebx)
41adeb:	74 10                	je     0x41adfd
41aded:	54                   	push   %esp
41adee:	8d 44 24 08          	lea    0x8(%esp),%eax
41adf2:	50                   	push   %eax
41adf3:	8b ce                	mov    %esi,%ecx
41adf5:	8b d3                	mov    %ebx,%edx
41adf7:	8b 43 3c             	mov    0x3c(%ebx),%eax
41adfa:	ff 53 38             	call   *0x38(%ebx)
41adfd:	80 7c 24 04 00       	cmpb   $0x0,0x4(%esp)