41fa71:	c2 08 00             	ret    $0x8
41fa74:	8b ff                	mov    %edi,%edi
41fa76:	55                   	push   %ebp
41fa77:	8b ec                	mov    %esp,%ebp
41fa79:	83 e4 f8             	and    $0xfffffff8,%esp
41fa7c:	83 ec 0c             	sub    $0xc,%esp
41fa7f:	53                   	push   %ebx
41fa80:	8b d9                	mov    %ecx,%ebx
41fa82:	56                   	push   %esi
41fa83:	57                   	push   %edi
41fa84:	8b 7b 04             	mov    0x4(%ebx),%edi
41fa87:	89 7c 24 14          	mov    %edi,0x14(%esp)
41fa8b:	85 ff                	test   %edi,%edi
41fa8d:	0f 84 07 01 00 00    	je     0x41fb9a
41fa93:	33 f6                	xor    %esi,%esi
41fa95:	39 75 08             	cmp    %esi,0x8(%ebp)
41fa98:	74 4f                	je     0x41fae9
41fa9a:	39 73 30             	cmp    %esi,0x30(%ebx)
41fa9d:	74 0e                	je     0x41faad
41fa9f:	39 77 08             	cmp    %esi,0x8(%edi)
41faa2:	75 09                	jne    0x41faad
41faa4:	39 73 2c             	cmp    %esi,0x2c(%ebx)
41faa7:	0f 84 ed 00 00 00    	je     0x41fb9a
41faad:	8b 47 08             	mov    0x8(%edi),%eax
41fab0:	09 43 2c             	or     %eax,0x2c(%ebx)
41fab3:	8b 0d 30 49 4a 00    	mov    0x4a4930,%ecx
41fab9:	3b f9                	cmp    %ecx,%edi
41fabb:	75 10                	jne    0x41facd
41fabd:	33 d2                	xor    %edx,%edx
41fabf:	e8 18 d3 00 00       	call   0x42cddc
41fac4:	89 35 30 49 4a 00    	mov    %esi,0x4a4930
41faca:	8b 7b 04             	mov    0x4(%ebx),%edi
41facd:	2b 3d 44 47 4a 00    	sub    0x4a4744,%edi
41fad3:	f7 df                	neg    %edi
41fad5:	1b ff                	sbb    %edi,%edi
41fad7:	21 3d 44 47 4a 00    	and    %edi,0x4a4744
41fadd:	e8 c9 d7 00 00       	call   0x42d2ab
41fae2:	8b 7b 04             	mov    0x4(%ebx),%edi
41fae5:	89 7c 24 14          	mov    %edi,0x14(%esp)
41fae9:	89 74 24 10          	mov    %esi,0x10(%esp)
41faed:	39 73 24             	cmp    %esi,0x24(%ebx)
41faf0:	74 1f                	je     0x41fb11
41faf2:	8b 43 10             	mov    0x10(%ebx),%eax
41faf5:	83 e8 01             	sub    $0x1,%eax
41faf8:	74 0f                	je     0x41fb09
41fafa:	83 e8 01             	sub    $0x1,%eax
41fafd:	75 12                	jne    0x41fb11
41faff:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
41fb06:	00
41fb07:	eb 08                	jmp    0x41fb11
41fb09:	c7 44 24 10 02 00 00 	movl   $0x2,0x10(%esp)
41fb10:	00
41fb11:	8d 4b 10             	lea    0x10(%ebx),%ecx
41fb14:	e8 67 e5 ff ff       	call   0x41e080
41fb19:	8b 7f 14             	mov    0x14(%edi),%edi
41fb1c:	8b f0                	mov    %eax,%esi
41fb1e:	8b 44 24 14          	mov    0x14(%esp),%eax
41fb22:	ff 70 18             	push   0x18(%eax)
41fb25:	ff 70 0c             	push   0xc(%eax)
41fb28:	ff 15 68 71 4a 00    	call   *0x4a7168
41fb2e:	8b 43 04             	mov    0x4(%ebx),%eax
41fb31:	8b 54 24 10          	mov    0x10(%esp),%edx
41fb35:	ff 70 40             	push   0x40(%eax)
41fb38:	ff 70 3c             	push   0x3c(%eax)
41fb3b:	8d 44 24 1c          	lea    0x1c(%esp),%eax
41fb3f:	50                   	push   %eax
41fb40:	51                   	push   %ecx
41fb41:	ff 35 60 58 4a 00    	push   0x4a5860
41fb47:	8b cf                	mov    %edi,%ecx
41fb49:	56                   	push   %esi
41fb4a:	e8 30 db 00 00       	call   0x42d67f
41fb4f:	8b f0                	mov    %eax,%esi
41fb51:	8b 43 04             	mov    0x4(%ebx),%eax
41fb54:	ff 70 14             	push   0x14(%eax)
41fb57:	ff 70 0c             	push   0xc(%eax)
41fb5a:	ff 15 68 71 4a 00    	call   *0x4a7168
41fb60:	85 f6                	test   %esi,%esi
41fb62:	75 10                	jne    0x41fb74
41fb64:	6a 01                	push   $0x1
41fb66:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
41fb6b:	e8 09 e1 02 00       	call   0x44dc79
41fb70:	33 c0                	xor    %eax,%eax
41fb72:	eb 29                	jmp    0x41fb9d
41fb74:	33 ff                	xor    %edi,%edi
41fb76:	39 7b 30             	cmp    %edi,0x30(%ebx)
41fb79:	74 07                	je     0x41fb82
41fb7b:	8b cb                	mov    %ebx,%ecx
41fb7d:	e8 7c e7 ff ff       	call   0x41e2fe
41fb82:	8b 4c 24 14          	mov    0x14(%esp),%ecx
41fb86:	89 7b 34             	mov    %edi,0x34(%ebx)
41fb89:	89 73 30             	mov    %esi,0x30(%ebx)
41fb8c:	89 4b 38             	mov    %ecx,0x38(%ebx)
41fb8f:	39 7d 08             	cmp    %edi,0x8(%ebp)
41fb92:	74 06                	je     0x41fb9a
41fb94:	8b 4b 04             	mov    0x4(%ebx),%ecx
41fb97:	89 79 08             	mov    %edi,0x8(%ecx)
41fb9a:	33 c0                	xor    %eax,%eax
41fb9c:	40                   	inc    %eax
41fb9d:	5f                   	pop    %edi
41fb9e:	5e                   	pop    %esi
41fb9f:	5b                   	pop    %ebx
41fba0:	8b e5                	mov    %ebp,%esp
41fba2:	5d                   	pop    %ebp
41fba3:	c2 04 00             	ret    $0x4
41fba6:	8b ff                	mov    %edi,%edi
41fba8:	55                   	push   %ebp
41fba9:	8b ec                	mov    %esp,%ebp
41fbab:	6a ff                	push   $0xffffffff
41fbad:	68 e2 17 49 00       	push   $0x4917e2
41fbb2:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41fbb8:	50                   	push   %eax
41fbb9:	83 ec 10             	sub    $0x10,%esp
41fbbc:	53                   	push   %ebx
41fbbd:	56                   	push   %esi
41fbbe:	57                   	push   %edi
41fbbf:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41fbc4:	33 c5                	xor    %ebp,%eax
41fbc6:	50                   	push   %eax
41fbc7:	8d 45 f4             	lea    -0xc(%ebp),%eax
41fbca:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41fbd0:	89 65 f0             	mov    %esp,-0x10(%ebp)
41fbd3:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
41fbd6:	ff 15 38 74 4a 00    	call   *0x4a7438
41fbdc:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41fbe0:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
41fbe4:	ff 15 58 75 4a 00    	call   *0x4a7558
41fbea:	8b 48 04             	mov    0x4(%eax),%ecx
41fbed:	ff 15 a4 75 4a 00    	call   *0x4a75a4
41fbf3:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
41fbfa:	ff 15 3c 74 4a 00    	call   *0x4a743c
41fc00:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41fc03:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41fc0a:	59                   	pop    %ecx
41fc0b:	5f                   	pop    %edi
41fc0c:	5e                   	pop    %esi
41fc0d:	5b                   	pop    %ebx
41fc0e:	c9                   	leave
41fc0f:	c3                   	ret
41fc10:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41fc13:	89 4d e8             	mov    %ecx,-0x18(%ebp)
41fc16:	85 c9                	test   %ecx,%ecx
41fc18:	74 06                	je     0x41fc20
41fc1a:	ff 15 24 75 4a 00    	call   *0x4a7524
41fc20:	b8 f3 fb 41 00       	mov    $0x41fbf3,%eax
41fc25:	c3                   	ret
41fc26:	8b ff                	mov    %edi,%edi
41fc28:	55                   	push   %ebp
41fc29:	8b ec                	mov    %esp,%ebp
41fc2b:	8b 45 18             	mov    0x18(%ebp),%eax
41fc2e:	85 c0                	test   %eax,%eax
41fc30:	74 03                	je     0x41fc35
41fc32:	8b 40 04             	mov    0x4(%eax),%eax
41fc35:	ff 75 24             	push   0x24(%ebp)
41fc38:	ff 75 20             	push   0x20(%ebp)
41fc3b:	ff 75 1c             	push   0x1c(%ebp)
41fc3e:	50                   	push   %eax
41fc3f:	ff 75 14             	push   0x14(%ebp)
41fc42:	ff 75 10             	push   0x10(%ebp)
41fc45:	ff 75 0c             	push   0xc(%ebp)
41fc48:	ff 75 08             	push   0x8(%ebp)
41fc4b:	ff 71 04             	push   0x4(%ecx)
41fc4e:	ff 15 7c 71 4a 00    	call   *0x4a717c
41fc54:	5d                   	pop    %ebp
41fc55:	c2 20 00             	ret    $0x20
41fc58:	8b ff                	mov    %edi,%edi
41fc5a:	55                   	push   %ebp
41fc5b:	8b ec                	mov    %esp,%ebp
41fc5d:	8b 45 08             	mov    0x8(%ebp),%eax
41fc60:	56                   	push   %esi
41fc61:	8b f1                	mov    %ecx,%esi
41fc63:	85 c0                	test   %eax,%eax
41fc65:	74 03                	je     0x41fc6a
41fc67:	8b 40 04             	mov    0x4(%eax),%eax
41fc6a:	50                   	push   %eax
41fc6b:	ff 15 74 71 4a 00    	call   *0x4a7174
41fc71:	50                   	push   %eax
41fc72:	8b ce                	mov    %esi,%ecx
41fc74:	ff 15 88 75 4a 00    	call   *0x4a7588
41fc7a:	5e                   	pop    %esi
41fc7b:	5d                   	pop    %ebp
41fc7c:	c2 04 00             	ret    $0x4
41fc7f:	8b ff                	mov    %edi,%edi
41fc81:	56                   	push   %esi
41fc82:	8b f1                	mov    %ecx,%esi
41fc84:	8d 4e 10             	lea    0x10(%esi),%ecx
41fc87:	c7 06 cc 13 40 00    	movl   $0x4013cc,(%esi)
41fc8d:	ff 15 1c 74 4a 00    	call   *0x4a741c
41fc93:	c7 06 4c 14 40 00    	movl   $0x40144c,(%esi)
41fc99:	5e                   	pop    %esi
41fc9a:	c3                   	ret
41fc9b:	c7 01 4c 14 40 00    	movl   $0x40144c,(%ecx)
41fca1:	c3                   	ret
41fca2:	cc                   	int3
41fca3:	cc                   	int3
41fca4:	cc                   	int3
41fca5:	cc                   	int3
41fca6:	cc                   	int3
41fca7:	cc                   	int3
41fca8:	cc                   	int3
41fca9:	cc                   	int3
41fcaa:	cc                   	int3
41fcab:	cc                   	int3
41fcac:	cc                   	int3
41fcad:	cc                   	int3
41fcae:	cc                   	int3
41fcaf:	cc                   	int3
41fcb0:	8b ff                	mov    %edi,%edi
41fcb2:	55                   	push   %ebp
41fcb3:	8b ec                	mov    %esp,%ebp
41fcb5:	56                   	push   %esi
41fcb6:	8b f1                	mov    %ecx,%esi
41fcb8:	e8 c2 ff ff ff       	call   0x41fc7f
41fcbd:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41fcc1:	74 08                	je     0x41fccb
41fcc3:	56                   	push   %esi
41fcc4:	ff 15 10 74 4a 00    	call   *0x4a7410
41fcca:	59                   	pop    %ecx
41fccb:	8b c6                	mov    %esi,%eax
41fccd:	5e                   	pop    %esi
41fcce:	5d                   	pop    %ebp
41fccf:	c2 04 00             	ret    $0x4
41fcd2:	6a 04                	push   $0x4
41fcd4:	b8 11 18 49 00       	mov    $0x491811,%eax
41fcd9:	e8 f5 07 07 00       	call   0x4904d3
41fcde:	8b f9                	mov    %ecx,%edi
41fce0:	89 7d f0             	mov    %edi,-0x10(%ebp)
41fce3:	ff 15 74 75 4a 00    	call   *0x4a7574
41fce9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41fced:	8d 4f 10             	lea    0x10(%edi),%ecx
41fcf0:	c7 07 cc 13 40 00    	movl   $0x4013cc,(%edi)
41fcf6:	ff 15 20 74 4a 00    	call   *0x4a7420
41fcfc:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
41fd00:	8d 4f 10             	lea    0x10(%edi),%ecx
41fd03:	83 67 08 00          	andl   $0x0,0x8(%edi)
41fd07:	83 4f 0c ff          	orl    $0xffffffff,0xc(%edi)
41fd0b:	6a 00                	push   $0x0
41fd0d:	ff 15 64 75 4a 00    	call   *0x4a7564
41fd13:	8b c7                	mov    %edi,%eax
41fd15:	e8 87 07 07 00       	call   0x4904a1
41fd1a:	c2 0c 00             	ret    $0xc
41fd1d:	8b ff                	mov    %edi,%edi
41fd1f:	55                   	push   %ebp
41fd20:	8b ec                	mov    %esp,%ebp
41fd22:	56                   	push   %esi
41fd23:	57                   	push   %edi
41fd24:	8b 7d 08             	mov    0x8(%ebp),%edi
41fd27:	6a 01                	push   $0x1
41fd29:	6a 0c                	push   $0xc
41fd2b:	8b 37                	mov    (%edi),%esi
41fd2d:	56                   	push   %esi
41fd2e:	ff 15 50 75 4a 00    	call   *0x4a7550
41fd34:	85 c0                	test   %eax,%eax
41fd36:	75 06                	jne    0x41fd3e
41fd38:	ff 15 4c 75 4a 00    	call   *0x4a754c
41fd3e:	8b 06                	mov    (%esi),%eax
41fd40:	89 07                	mov    %eax,(%edi)
41fd42:	8d 46 08             	lea    0x8(%esi),%eax
41fd45:	5f                   	pop    %edi
41fd46:	5e                   	pop    %esi
41fd47:	5d                   	pop    %ebp
41fd48:	c2 04 00             	ret    $0x4
41fd4b:	cc                   	int3
41fd4c:	cc                   	int3
41fd4d:	cc                   	int3
41fd4e:	cc                   	int3
41fd4f:	cc                   	int3
41fd50:	8b ff                	mov    %edi,%edi
41fd52:	55                   	push   %ebp
41fd53:	8b ec                	mov    %esp,%ebp
41fd55:	56                   	push   %esi
41fd56:	8b f1                	mov    %ecx,%esi
41fd58:	c7 06 1c 14 40 00    	movl   $0x40141c,(%esi)
41fd5e:	e8 70 00 00 00       	call   0x41fdd3
41fd63:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41fd67:	74 08                	je     0x41fd71
41fd69:	56                   	push   %esi
41fd6a:	ff 15 10 74 4a 00    	call   *0x4a7410
41fd70:	59                   	pop    %ecx
41fd71:	8b c6                	mov    %esi,%eax
41fd73:	5e                   	pop    %esi
41fd74:	5d                   	pop    %ebp
41fd75:	c2 04 00             	ret    $0x4
41fd78:	cc                   	int3
41fd79:	cc                   	int3
41fd7a:	cc                   	int3
41fd7b:	cc                   	int3
41fd7c:	cc                   	int3
41fd7d:	cc                   	int3
41fd7e:	cc                   	int3
41fd7f:	cc                   	int3
41fd80:	8b ff                	mov    %edi,%edi
41fd82:	55                   	push   %ebp
41fd83:	8b ec                	mov    %esp,%ebp
41fd85:	56                   	push   %esi
41fd86:	8b f1                	mov    %ecx,%esi
41fd88:	e8 46 00 00 00       	call   0x41fdd3
41fd8d:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41fd91:	74 08                	je     0x41fd9b
41fd93:	56                   	push   %esi
41fd94:	ff 15 10 74 4a 00    	call   *0x4a7410
41fd9a:	59                   	pop    %ecx
41fd9b:	8b c6                	mov    %esi,%eax
41fd9d:	5e                   	pop    %esi
41fd9e:	5d                   	pop    %ebp
41fd9f:	c2 04 00             	ret    $0x4
41fda2:	cc                   	int3
41fda3:	cc                   	int3
41fda4:	cc                   	int3
41fda5:	cc                   	int3
41fda6:	cc                   	int3
41fda7:	cc                   	int3
41fda8:	cc                   	int3
41fda9:	cc                   	int3
41fdaa:	cc                   	int3
41fdab:	cc                   	int3
41fdac:	cc                   	int3
41fdad:	cc                   	int3
41fdae:	cc                   	int3
41fdaf:	cc                   	int3
41fdb0:	8b ff                	mov    %edi,%edi
41fdb2:	55                   	push   %ebp
41fdb3:	8b ec                	mov    %esp,%ebp
41fdb5:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41fdb9:	56                   	push   %esi
41fdba:	8b f1                	mov    %ecx,%esi
41fdbc:	c7 06 4c 14 40 00    	movl   $0x40144c,(%esi)
41fdc2:	74 08                	je     0x41fdcc
41fdc4:	56                   	push   %esi
41fdc5:	ff 15 10 74 4a 00    	call   *0x4a7410
41fdcb:	59                   	pop    %ecx
41fdcc:	8b c6                	mov    %esi,%eax
41fdce:	5e                   	pop    %esi
41fdcf:	5d                   	pop    %ebp
41fdd0:	c2 04 00             	ret    $0x4
41fdd3:	8b ff                	mov    %edi,%edi
41fdd5:	55                   	push   %ebp
41fdd6:	8b ec                	mov    %esp,%ebp
41fdd8:	6a ff                	push   $0xffffffff
41fdda:	68 39 18 49 00       	push   $0x491839
41fddf:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41fde5:	50                   	push   %eax
41fde6:	83 ec 14             	sub    $0x14,%esp
41fde9:	53                   	push   %ebx
41fdea:	56                   	push   %esi
41fdeb:	57                   	push   %edi
41fdec:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41fdf1:	33 c5                	xor    %ebp,%eax
41fdf3:	50                   	push   %eax
41fdf4:	8d 45 f4             	lea    -0xc(%ebp),%eax
41fdf7:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0