41fb62:	8d 43 01             	lea    0x1(%ebx),%eax
41fb65:	50                   	push   %eax
41fb66:	57                   	push   %edi
41fb67:	ff 75 0c             	push   0xc(%ebp)
41fb6a:	ff 75 08             	push   0x8(%ebp)
41fb6d:	e8 f9 01 00 00       	call   0x41fd6b
41fb72:	83 c4 1c             	add    $0x1c,%esp
41fb75:	83 f8 fe             	cmp    $0xfffffffe,%eax
41fb78:	75 43                	jne    0x41fbbd
41fb7a:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
41fb7e:	eb 27                	jmp    0x41fba7
41fb80:	50                   	push   %eax
41fb81:	57                   	push   %edi
41fb82:	ff 75 0c             	push   0xc(%ebp)
41fb85:	ff 75 08             	push   0x8(%ebp)
41fb88:	e8 de 01 00 00       	call   0x41fd6b
41fb8d:	8b 4d 14             	mov    0x14(%ebp),%ecx
41fb90:	33 d2                	xor    %edx,%edx
41fb92:	83 c4 1c             	add    $0x1c,%esp
41fb95:	66 89 54 4f fe       	mov    %dx,-0x2(%edi,%ecx,2)
41fb9a:	83 f8 fe             	cmp    $0xfffffffe,%eax
41fb9d:	75 1e                	jne    0x41fbbd
41fb9f:	83 fb ff             	cmp    $0xffffffff,%ebx
41fba2:	75 1d                	jne    0x41fbc1
41fba4:	38 56 1c             	cmp    %dl,0x1c(%esi)
41fba7:	74 46                	je     0x41fbef
41fba9:	83 7e 18 22          	cmpl   $0x22,0x18(%esi)
41fbad:	75 40                	jne    0x41fbef
41fbaf:	8b 45 fc             	mov    -0x4(%ebp),%eax
41fbb2:	89 46 18             	mov    %eax,0x18(%esi)
41fbb5:	8b 45 f8             	mov    -0x8(%ebp),%eax
41fbb8:	89 46 1c             	mov    %eax,0x1c(%esi)
41fbbb:	eb 32                	jmp    0x41fbef
41fbbd:	85 c0                	test   %eax,%eax
41fbbf:	79 31                	jns    0x41fbf2
41fbc1:	33 c9                	xor    %ecx,%ecx
41fbc3:	66 89 0f             	mov    %cx,(%edi)
41fbc6:	83 f8 fe             	cmp    $0xfffffffe,%eax
41fbc9:	75 24                	jne    0x41fbef
41fbcb:	c7 46 18 22 00 00 00 	movl   $0x22,0x18(%esi)
41fbd2:	eb 07                	jmp    0x41fbdb
41fbd4:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
41fbdb:	33 c0                	xor    %eax,%eax
41fbdd:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
41fbe1:	56                   	push   %esi
41fbe2:	50                   	push   %eax
41fbe3:	50                   	push   %eax
41fbe4:	50                   	push   %eax
41fbe5:	50                   	push   %eax
41fbe6:	50                   	push   %eax
41fbe7:	e8 1a fd ff ff       	call   0x41f906
41fbec:	83 c4 18             	add    $0x18,%esp
41fbef:	83 c8 ff             	or     $0xffffffff,%eax
41fbf2:	5f                   	pop    %edi
41fbf3:	5b                   	pop    %ebx
41fbf4:	5e                   	pop    %esi
41fbf5:	c9                   	leave
41fbf6:	c3                   	ret
41fbf7:	8b ff                	mov    %edi,%edi
41fbf9:	55                   	push   %ebp
41fbfa:	8b ec                	mov    %esp,%ebp
41fbfc:	81 ec 74 04 00 00    	sub    $0x474,%esp
41fc02:	a1 14 50 45 00       	mov    0x455014,%eax
41fc07:	33 c5                	xor    %ebp,%eax
41fc09:	89 45 fc             	mov    %eax,-0x4(%ebp)
41fc0c:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
41fc10:	8b 45 10             	mov    0x10(%ebp),%eax
41fc13:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
41fc16:	53                   	push   %ebx
41fc17:	56                   	push   %esi
41fc18:	8b 75 14             	mov    0x14(%ebp),%esi
41fc1b:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
41fc21:	75 23                	jne    0x41fc46
41fc23:	51                   	push   %ecx
41fc24:	33 db                	xor    %ebx,%ebx
41fc26:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
41fc2a:	53                   	push   %ebx
41fc2b:	53                   	push   %ebx
41fc2c:	53                   	push   %ebx
41fc2d:	53                   	push   %ebx
41fc2e:	53                   	push   %ebx
41fc2f:	c7 41 18 16 00 00 00 	movl   $0x16,0x18(%ecx)
41fc36:	e8 cb fc ff ff       	call   0x41f906
41fc3b:	83 c4 18             	add    $0x18,%esp
41fc3e:	83 c8 ff             	or     $0xffffffff,%eax
41fc41:	e9 17 01 00 00       	jmp    0x41fd5d
41fc46:	85 f6                	test   %esi,%esi
41fc48:	74 04                	je     0x41fc4e
41fc4a:	85 c0                	test   %eax,%eax
41fc4c:	74 d5                	je     0x41fc23
41fc4e:	8b 55 08             	mov    0x8(%ebp),%edx
41fc51:	33 c0                	xor    %eax,%eax
41fc53:	57                   	push   %edi
41fc54:	8d bd 90 fb ff ff    	lea    -0x470(%ebp),%edi
41fc5a:	33 db                	xor    %ebx,%ebx
41fc5c:	ab                   	stos   %eax,%es:(%edi)
41fc5d:	ab                   	stos   %eax,%es:(%edi)
41fc5e:	ab                   	stos   %eax,%es:(%edi)
41fc5f:	ab                   	stos   %eax,%es:(%edi)
41fc60:	8b c2                	mov    %edx,%eax
41fc62:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
41fc68:	83 e0 02             	and    $0x2,%eax
41fc6b:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
41fc71:	0b c3                	or     %ebx,%eax
41fc73:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
41fc79:	89 b5 94 fb ff ff    	mov    %esi,-0x46c(%ebp)
41fc7f:	89 9d 98 fb ff ff    	mov    %ebx,-0x468(%ebp)
41fc85:	75 0a                	jne    0x41fc91
41fc87:	88 9d 9c fb ff ff    	mov    %bl,-0x464(%ebp)
41fc8d:	85 ff                	test   %edi,%edi
41fc8f:	75 07                	jne    0x41fc98
41fc91:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
41fc98:	ff 75 20             	push   0x20(%ebp)
41fc9b:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
41fca1:	51                   	push   %ecx
41fca2:	ff 75 18             	push   0x18(%ebp)
41fca5:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
41fcab:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
41fcb1:	ff 75 0c             	push   0xc(%ebp)
41fcb4:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
41fcba:	52                   	push   %edx
41fcbb:	50                   	push   %eax
41fcbc:	e8 f9 1c 00 00       	call   0x4219ba
41fcc1:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
41fcc7:	89 5d f4             	mov    %ebx,-0xc(%ebp)
41fcca:	e8 23 20 00 00       	call   0x421cf2
41fccf:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
41fcd5:	85 ff                	test   %edi,%edi
41fcd7:	74 70                	je     0x41fd49
41fcd9:	8b 4d 08             	mov    0x8(%ebp),%ecx
41fcdc:	83 e1 01             	and    $0x1,%ecx
41fcdf:	0b cb                	or     %ebx,%ecx
41fce1:	74 21                	je     0x41fd04
41fce3:	85 f6                	test   %esi,%esi
41fce5:	75 04                	jne    0x41fceb
41fce7:	85 c0                	test   %eax,%eax
41fce9:	75 43                	jne    0x41fd2e
41fceb:	8b 8d 98 fb ff ff    	mov    -0x468(%ebp),%ecx
41fcf1:	3b ce                	cmp    %esi,%ecx
41fcf3:	74 05                	je     0x41fcfa
41fcf5:	88 1c 0f             	mov    %bl,(%edi,%ecx,1)
41fcf8:	eb 4f                	jmp    0x41fd49
41fcfa:	85 c0                	test   %eax,%eax
41fcfc:	78 4b                	js     0x41fd49
41fcfe:	3b c6                	cmp    %esi,%eax
41fd00:	77 2c                	ja     0x41fd2e
41fd02:	eb 45                	jmp    0x41fd49
41fd04:	8b 8d 8c fb ff ff    	mov    -0x474(%ebp),%ecx
41fd0a:	0b cb                	or     %ebx,%ecx
41fd0c:	74 1c                	je     0x41fd2a
41fd0e:	85 f6                	test   %esi,%esi
41fd10:	74 37                	je     0x41fd49
41fd12:	85 c0                	test   %eax,%eax
41fd14:	79 04                	jns    0x41fd1a
41fd16:	88 1f                	mov    %bl,(%edi)
41fd18:	eb 2f                	jmp    0x41fd49
41fd1a:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
41fd20:	3b c6                	cmp    %esi,%eax
41fd22:	75 22                	jne    0x41fd46
41fd24:	88 5c 3e ff          	mov    %bl,-0x1(%esi,%edi,1)
41fd28:	eb 1f                	jmp    0x41fd49
41fd2a:	85 f6                	test   %esi,%esi
41fd2c:	75 05                	jne    0x41fd33
41fd2e:	83 ce ff             	or     $0xffffffff,%esi
41fd31:	eb 1c                	jmp    0x41fd4f
41fd33:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
41fd39:	3b c6                	cmp    %esi,%eax
41fd3b:	75 09                	jne    0x41fd46
41fd3d:	6a fe                	push   $0xfffffffe
41fd3f:	88 5c 3e ff          	mov    %bl,-0x1(%esi,%edi,1)
41fd43:	5e                   	pop    %esi
41fd44:	eb 09                	jmp    0x41fd4f
41fd46:	88 1c 07             	mov    %bl,(%edi,%eax,1)
41fd49:	8b b5 a0 fb ff ff    	mov    -0x460(%ebp),%esi
41fd4f:	8d 8d e0 fb ff ff    	lea    -0x420(%ebp),%ecx
41fd55:	e8 33 1d 00 00       	call   0x421a8d
41fd5a:	8b c6                	mov    %esi,%eax
41fd5c:	5f                   	pop    %edi
41fd5d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41fd60:	5e                   	pop    %esi
41fd61:	33 cd                	xor    %ebp,%ecx
41fd63:	5b                   	pop    %ebx
41fd64:	e8 41 9e ff ff       	call   0x419baa
41fd69:	c9                   	leave
41fd6a:	c3                   	ret
41fd6b:	8b ff                	mov    %edi,%edi
41fd6d:	55                   	push   %ebp
41fd6e:	8b ec                	mov    %esp,%ebp
41fd70:	81 ec 74 04 00 00    	sub    $0x474,%esp
41fd76:	a1 14 50 45 00       	mov    0x455014,%eax
41fd7b:	33 c5                	xor    %ebp,%eax
41fd7d:	89 45 fc             	mov    %eax,-0x4(%ebp)
41fd80:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
41fd84:	8b 45 10             	mov    0x10(%ebp),%eax
41fd87:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
41fd8a:	53                   	push   %ebx
41fd8b:	56                   	push   %esi
41fd8c:	8b 75 14             	mov    0x14(%ebp),%esi
41fd8f:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
41fd95:	75 23                	jne    0x41fdba
41fd97:	51                   	push   %ecx
41fd98:	33 db                	xor    %ebx,%ebx
41fd9a:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
41fd9e:	53                   	push   %ebx
41fd9f:	53                   	push   %ebx
41fda0:	53                   	push   %ebx
41fda1:	53                   	push   %ebx
41fda2:	53                   	push   %ebx
41fda3:	c7 41 18 16 00 00 00 	movl   $0x16,0x18(%ecx)
41fdaa:	e8 57 fb ff ff       	call   0x41f906
41fdaf:	83 c4 18             	add    $0x18,%esp
41fdb2:	83 c8 ff             	or     $0xffffffff,%eax
41fdb5:	e9 26 01 00 00       	jmp    0x41fee0
41fdba:	85 f6                	test   %esi,%esi
41fdbc:	74 04                	je     0x41fdc2
41fdbe:	85 c0                	test   %eax,%eax
41fdc0:	74 d5                	je     0x41fd97
41fdc2:	8b 55 08             	mov    0x8(%ebp),%edx
41fdc5:	33 c0                	xor    %eax,%eax
41fdc7:	57                   	push   %edi
41fdc8:	8d bd 90 fb ff ff    	lea    -0x470(%ebp),%edi
41fdce:	33 db                	xor    %ebx,%ebx
41fdd0:	ab                   	stos   %eax,%es:(%edi)
41fdd1:	ab                   	stos   %eax,%es:(%edi)
41fdd2:	ab                   	stos   %eax,%es:(%edi)
41fdd3:	ab                   	stos   %eax,%es:(%edi)
41fdd4:	8b c2                	mov    %edx,%eax
41fdd6:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
41fddc:	83 e0 02             	and    $0x2,%eax
41fddf:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
41fde5:	0b c3                	or     %ebx,%eax
41fde7:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
41fded:	89 b5 94 fb ff ff    	mov    %esi,-0x46c(%ebp)
41fdf3:	89 9d 98 fb ff ff    	mov    %ebx,-0x468(%ebp)
41fdf9:	75 0a                	jne    0x41fe05
41fdfb:	88 9d 9c fb ff ff    	mov    %bl,-0x464(%ebp)
41fe01:	85 ff                	test   %edi,%edi
41fe03:	75 07                	jne    0x41fe0c
41fe05:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
41fe0c:	ff 75 20             	push   0x20(%ebp)
41fe0f:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
41fe15:	51                   	push   %ecx
41fe16:	ff 75 18             	push   0x18(%ebp)
41fe19:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
41fe1f:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
41fe25:	ff 75 0c             	push   0xc(%ebp)
41fe28:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
41fe2e:	52                   	push   %edx
41fe2f:	50                   	push   %eax
41fe30:	e8 ec 1b 00 00       	call   0x421a21
41fe35:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
41fe3b:	89 5d f4             	mov    %ebx,-0xc(%ebp)
41fe3e:	e8 93 21 00 00       	call   0x421fd6
41fe43:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
41fe49:	85 ff                	test   %edi,%edi
41fe4b:	74 7f                	je     0x41fecc
41fe4d:	8b 4d 08             	mov    0x8(%ebp),%ecx
41fe50:	83 e1 01             	and    $0x1,%ecx
41fe53:	0b cb                	or     %ebx,%ecx
41fe55:	74 24                	je     0x41fe7b
41fe57:	85 f6                	test   %esi,%esi
41fe59:	75 04                	jne    0x41fe5f
41fe5b:	85 c0                	test   %eax,%eax
41fe5d:	75 4c                	jne    0x41feab
41fe5f:	8b 8d 98 fb ff ff    	mov    -0x468(%ebp),%ecx
41fe65:	3b ce                	cmp    %esi,%ecx
41fe67:	74 08                	je     0x41fe71
41fe69:	33 c0                	xor    %eax,%eax
41fe6b:	66 89 04 4f          	mov    %ax,(%edi,%ecx,2)
41fe6f:	eb 5b                	jmp    0x41fecc
41fe71:	85 c0                	test   %eax,%eax
41fe73:	78 57                	js     0x41fecc
41fe75:	3b c6                	cmp    %esi,%eax
41fe77:	77 32                	ja     0x41feab
41fe79:	eb 51                	jmp    0x41fecc
41fe7b:	8b 8d 8c fb ff ff    	mov    -0x474(%ebp),%ecx
41fe81:	0b cb                	or     %ebx,%ecx
41fe83:	74 22                	je     0x41fea7
41fe85:	85 f6                	test   %esi,%esi
41fe87:	74 43                	je     0x41fecc
41fe89:	85 c0                	test   %eax,%eax
41fe8b:	79 07                	jns    0x41fe94
41fe8d:	33 c0                	xor    %eax,%eax
41fe8f:	66 89 07             	mov    %ax,(%edi)
41fe92:	eb 38                	jmp    0x41fecc
41fe94:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
41fe9a:	3b c6                	cmp    %esi,%eax
41fe9c:	75 28                	jne    0x41fec6
41fe9e:	33 c0                	xor    %eax,%eax
41fea0:	66 89 44 77 fe       	mov    %ax,-0x2(%edi,%esi,2)
41fea5:	eb 25                	jmp    0x41fecc
41fea7:	85 f6                	test   %esi,%esi
41fea9:	75 05                	jne    0x41feb0
41feab:	83 ce ff             	or     $0xffffffff,%esi
41feae:	eb 22                	jmp    0x41fed2
41feb0:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
41feb6:	3b c6                	cmp    %esi,%eax
41feb8:	75 0c                	jne    0x41fec6
41feba:	33 c0                	xor    %eax,%eax
41febc:	6a fe                	push   $0xfffffffe
41febe:	66 89 44 77 fe       	mov    %ax,-0x2(%edi,%esi,2)
41fec3:	5e                   	pop    %esi
41fec4:	eb 0c                	jmp    0x41fed2
41fec6:	33 c9                	xor    %ecx,%ecx
41fec8:	66 89 0c 47          	mov    %cx,(%edi,%eax,2)
41fecc:	8b b5 a0 fb ff ff    	mov    -0x460(%ebp),%esi
41fed2:	8d 8d e0 fb ff ff    	lea    -0x420(%ebp),%ecx
41fed8:	e8 b0 1b 00 00       	call   0x421a8d
41fedd:	8b c6                	mov    %esi,%eax
41fedf:	5f                   	pop    %edi
41fee0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41fee3:	5e                   	pop    %esi
41fee4:	33 cd                	xor    %ebp,%ecx
41fee6:	5b                   	pop    %ebx
41fee7:	e8 be 9c ff ff       	call   0x419baa
41feec:	c9                   	leave
41feed:	c3                   	ret
41feee:	8b ff                	mov    %edi,%edi
41fef0:	55                   	push   %ebp
41fef1:	8b ec                	mov    %esp,%ebp
41fef3:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
41fef7:	57                   	push   %edi
41fef8:	75 23                	jne    0x41ff1d
41fefa:	8b 45 1c             	mov    0x1c(%ebp),%eax
41fefd:	50                   	push   %eax
41fefe:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
41ff02:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
41ff09:	33 c0                	xor    %eax,%eax
41ff0b:	50                   	push   %eax
41ff0c:	50                   	push   %eax
41ff0d:	50                   	push   %eax
41ff0e:	50                   	push   %eax
41ff0f:	50                   	push   %eax
41ff10:	e8 f1 f9 ff ff       	call   0x41f906
41ff15:	83 c4 18             	add    $0x18,%esp
41ff18:	83 c8 ff             	or     $0xffffffff,%eax
41ff1b:	eb 6d                	jmp    0x41ff8a
41ff1d:	56                   	push   %esi
41ff1e:	8b 75 10             	mov    0x10(%ebp),%esi
41ff21:	85 f6                	test   %esi,%esi
41ff23:	74 43                	je     0x41ff68
41ff25:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41ff29:	76 3d                	jbe    0x41ff68
41ff2b:	ff 75 20             	push   0x20(%ebp)
41ff2e:	8b 7d 1c             	mov    0x1c(%ebp),%edi
41ff31:	57                   	push   %edi
41ff32:	ff 75 18             	push   0x18(%ebp)
41ff35:	ff 75 14             	push   0x14(%ebp)
41ff38:	56                   	push   %esi
41ff39:	ff 75 0c             	push   0xc(%ebp)