477c50:	6a 34                	push   $0x34
477c52:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
477c58:	e8 c8 95 15 00       	call   0x5d1225
477c5d:	8b f0                	mov    %eax,%esi
477c5f:	83 c4 04             	add    $0x4,%esp
477c62:	89 b5 68 ff ff ff    	mov    %esi,-0x98(%ebp)
477c68:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
477c6f:	85 f6                	test   %esi,%esi
477c71:	74 11                	je     0x477c84
477c73:	6a 00                	push   $0x0
477c75:	8b ce                	mov    %esi,%ecx
477c77:	e8 e4 18 05 00       	call   0x4c9560
477c7c:	c7 06 b4 ec 60 00    	movl   $0x60ecb4,(%esi)
477c82:	eb 02                	jmp    0x477c86
477c84:	33 f6                	xor    %esi,%esi
477c86:	8b 8d 5c ff ff ff    	mov    -0xa4(%ebp),%ecx
477c8c:	81 c1 a4 00 00 00    	add    $0xa4,%ecx
477c92:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
477c99:	89 b5 68 ff ff ff    	mov    %esi,-0x98(%ebp)
477c9f:	8b 41 04             	mov    0x4(%ecx),%eax
477ca2:	3b 41 08             	cmp    0x8(%ecx),%eax
477ca5:	74 08                	je     0x477caf
477ca7:	89 30                	mov    %esi,(%eax)
477ca9:	83 41 04 04          	addl   $0x4,0x4(%ecx)
477cad:	eb 0d                	jmp    0x477cbc
477caf:	8d 95 68 ff ff ff    	lea    -0x98(%ebp),%edx
477cb5:	52                   	push   %edx
477cb6:	50                   	push   %eax
477cb7:	e8 64 12 00 00       	call   0x478f20
477cbc:	8b 8d 78 ff ff ff    	mov    -0x88(%ebp),%ecx
477cc2:	e8 39 62 04 00       	call   0x4bdf00
477cc7:	84 c0                	test   %al,%al
477cc9:	0f 85 ee 00 00 00    	jne    0x477dbd
477ccf:	8b 4f 10             	mov    0x10(%edi),%ecx
477cd2:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
477cd7:	2b c1                	sub    %ecx,%eax
477cd9:	83 f8 01             	cmp    $0x1,%eax
477cdc:	0f 82 c2 02 00 00    	jb     0x477fa4
477ce2:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
477ce6:	8b c7                	mov    %edi,%eax
477ce8:	72 02                	jb     0x477cec
477cea:	8b 07                	mov    (%edi),%eax
477cec:	6a 01                	push   $0x1
477cee:	68 68 67 60 00       	push   $0x606768
477cf3:	51                   	push   %ecx
477cf4:	50                   	push   %eax
477cf5:	57                   	push   %edi
477cf6:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
477cfc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
477cff:	e8 7c 3e 00 00       	call   0x47bb80
477d04:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
477d0a:	8d 45 d8             	lea    -0x28(%ebp),%eax
477d0d:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
477d14:	50                   	push   %eax
477d15:	8d 45 c0             	lea    -0x40(%ebp),%eax
477d18:	50                   	push   %eax
477d19:	e8 e2 e1 ff ff       	call   0x475f00
477d1e:	83 c4 0c             	add    $0xc,%esp
477d21:	68 bc a5 60 00       	push   $0x60a5bc
477d26:	6a 07                	push   $0x7
477d28:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
477d2e:	8b cb                	mov    %ebx,%ecx
477d30:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
477d34:	50                   	push   %eax
477d35:	e8 a6 6b 00 00       	call   0x47e8e0
477d3a:	8b 55 d4             	mov    -0x2c(%ebp),%edx
477d3d:	83 fa 10             	cmp    $0x10,%edx
477d40:	72 2c                	jb     0x477d6e
477d42:	8b 4d c0             	mov    -0x40(%ebp),%ecx
477d45:	42                   	inc    %edx
477d46:	8b c1                	mov    %ecx,%eax
477d48:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
477d4e:	72 14                	jb     0x477d64
477d50:	8b 49 fc             	mov    -0x4(%ecx),%ecx
477d53:	83 c2 23             	add    $0x23,%edx
477d56:	2b c1                	sub    %ecx,%eax
477d58:	83 c0 fc             	add    $0xfffffffc,%eax
477d5b:	83 f8 1f             	cmp    $0x1f,%eax
477d5e:	0f 87 45 02 00 00    	ja     0x477fa9
477d64:	52                   	push   %edx
477d65:	51                   	push   %ecx
477d66:	e8 ea 94 15 00       	call   0x5d1255
477d6b:	83 c4 08             	add    $0x8,%esp
477d6e:	8b 55 ec             	mov    -0x14(%ebp),%edx
477d71:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
477d78:	c7 45 d4 0f 00 00 00 	movl   $0xf,-0x2c(%ebp)
477d7f:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
477d83:	83 fa 10             	cmp    $0x10,%edx
477d86:	0f 82 fa 01 00 00    	jb     0x477f86
477d8c:	8b 4d d8             	mov    -0x28(%ebp),%ecx
477d8f:	42                   	inc    %edx
477d90:	8b c1                	mov    %ecx,%eax
477d92:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
477d98:	72 14                	jb     0x477dae
477d9a:	8b 49 fc             	mov    -0x4(%ecx),%ecx
477d9d:	83 c2 23             	add    $0x23,%edx
477da0:	2b c1                	sub    %ecx,%eax
477da2:	83 c0 fc             	add    $0xfffffffc,%eax
477da5:	83 f8 1f             	cmp    $0x1f,%eax
477da8:	0f 87 fb 01 00 00    	ja     0x477fa9
477dae:	52                   	push   %edx
477daf:	51                   	push   %ecx
477db0:	e8 a0 94 15 00       	call   0x5d1255
477db5:	83 c4 08             	add    $0x8,%esp
477db8:	e9 c9 01 00 00       	jmp    0x477f86
477dbd:	8b 8d 78 ff ff ff    	mov    -0x88(%ebp),%ecx
477dc3:	8d 45 d8             	lea    -0x28(%ebp),%eax
477dc6:	50                   	push   %eax
477dc7:	e8 e4 48 fe ff       	call   0x45c6b0
477dcc:	50                   	push   %eax
477dcd:	8b ce                	mov    %esi,%ecx
477dcf:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
477dd6:	e8 35 48 fe ff       	call   0x45c610
477ddb:	8b 55 ec             	mov    -0x14(%ebp),%edx
477dde:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
477de5:	83 fa 10             	cmp    $0x10,%edx
477de8:	72 2c                	jb     0x477e16
477dea:	8b 4d d8             	mov    -0x28(%ebp),%ecx
477ded:	42                   	inc    %edx
477dee:	8b c1                	mov    %ecx,%eax
477df0:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
477df6:	72 14                	jb     0x477e0c
477df8:	8b 49 fc             	mov    -0x4(%ecx),%ecx
477dfb:	83 c2 23             	add    $0x23,%edx
477dfe:	2b c1                	sub    %ecx,%eax
477e00:	83 c0 fc             	add    $0xfffffffc,%eax
477e03:	83 f8 1f             	cmp    $0x1f,%eax
477e06:	0f 87 a2 01 00 00    	ja     0x477fae
477e0c:	52                   	push   %edx
477e0d:	51                   	push   %ecx
477e0e:	e8 42 94 15 00       	call   0x5d1255
477e13:	83 c4 08             	add    $0x8,%esp
477e16:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
477e1c:	89 70 2c             	mov    %esi,0x2c(%eax)
477e1f:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
477e23:	0f 8e 81 00 00 00    	jle    0x477eaa
477e29:	57                   	push   %edi
477e2a:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
477e30:	e8 eb e8 fd ff       	call   0x456720
477e35:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
477e3b:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
477e3e:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
477e45:	e8 d6 e8 fd ff       	call   0x456720
477e4a:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
477e50:	8d 4d ac             	lea    -0x54(%ebp),%ecx
477e53:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
477e57:	e8 54 40 00 00       	call   0x47beb0
477e5c:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
477e62:	89 45 b8             	mov    %eax,-0x48(%ebp)
477e65:	89 75 bc             	mov    %esi,-0x44(%ebp)
477e68:	8b 43 10             	mov    0x10(%ebx),%eax
477e6b:	8d 73 0c             	lea    0xc(%ebx),%esi
477e6e:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
477e74:	c7 45 fc 06 00 00 00 	movl   $0x6,-0x4(%ebp)
477e7b:	51                   	push   %ecx
477e7c:	50                   	push   %eax
477e7d:	3b 46 08             	cmp    0x8(%esi),%eax
477e80:	74 0f                	je     0x477e91
477e82:	56                   	push   %esi
477e83:	e8 58 2a 00 00       	call   0x47a8e0
477e88:	83 c4 0c             	add    $0xc,%esp
477e8b:	83 46 04 44          	addl   $0x44,0x4(%esi)
477e8f:	eb 07                	jmp    0x477e98
477e91:	8b ce                	mov    %esi,%ecx
477e93:	e8 a8 16 00 00       	call   0x479540
477e98:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
477e9e:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
477ea5:	e8 76 5f 00 00       	call   0x47de20
477eaa:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
477eb0:	f6 40 04 01          	testb  $0x1,0x4(%eax)
477eb4:	74 0b                	je     0x477ec1
477eb6:	8b 70 04             	mov    0x4(%eax),%esi
477eb9:	83 e6 fc             	and    $0xfffffffc,%esi
477ebc:	83 c6 04             	add    $0x4,%esi
477ebf:	eb 07                	jmp    0x477ec8
477ec1:	e8 8a 92 fe ff       	call   0x461150
477ec6:	8b f0                	mov    %eax,%esi
477ec8:	8b 0e                	mov    (%esi),%ecx
477eca:	3b 4e 04             	cmp    0x4(%esi),%ecx
477ecd:	0f 84 b3 00 00 00    	je     0x477f86
477ed3:	8b 45 1c             	mov    0x1c(%ebp),%eax
477ed6:	83 ec 08             	sub    $0x8,%esp
477ed9:	8b cc                	mov    %esp,%ecx
477edb:	8b d0                	mov    %eax,%edx
477edd:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
477ee1:	72 02                	jb     0x477ee5
477ee3:	8b 10                	mov    (%eax),%edx
477ee5:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
477eec:	89 11                	mov    %edx,(%ecx)
477eee:	8b 40 10             	mov    0x10(%eax),%eax
477ef1:	89 41 04             	mov    %eax,0x4(%ecx)
477ef4:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
477efa:	8b 4b 04             	mov    0x4(%ebx),%ecx
477efd:	50                   	push   %eax
477efe:	e8 0d 92 01 00       	call   0x491110
477f03:	83 bd 60 ff ff ff 01 	cmpl   $0x1,-0xa0(%ebp)
477f0a:	75 7a                	jne    0x477f86
477f0c:	8b 46 04             	mov    0x4(%esi),%eax
477f0f:	33 db                	xor    %ebx,%ebx
477f11:	8b 3e                	mov    (%esi),%edi
477f13:	2b c7                	sub    %edi,%eax
477f15:	a9 f0 ff ff ff       	test   $0xfffffff0,%eax
477f1a:	7e 6a                	jle    0x477f86
477f1c:	33 c9                	xor    %ecx,%ecx
477f1e:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
477f24:	0f 1f 40 00          	nopl   0x0(%eax)
477f28:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
477f2f:	00
477f30:	ff 34 0f             	push   (%edi,%ecx,1)
477f33:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
477f39:	ff b5 64 ff ff ff    	push   -0x9c(%ebp)
477f3f:	8b 08                	mov    (%eax),%ecx
477f41:	e8 ba a9 01 00       	call   0x492900
477f46:	85 c0                	test   %eax,%eax
477f48:	74 20                	je     0x477f6a
477f4a:	8b 40 14             	mov    0x14(%eax),%eax
477f4d:	8b 8d 6c ff ff ff    	mov    -0x94(%ebp),%ecx
477f53:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
477f59:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
477f5f:	50                   	push   %eax
477f60:	8d 49 44             	lea    0x44(%ecx),%ecx
477f63:	e8 88 5c 02 00       	call   0x49dbf0
477f68:	8b 3e                	mov    (%esi),%edi
477f6a:	8b 46 04             	mov    0x4(%esi),%eax
477f6d:	43                   	inc    %ebx
477f6e:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
477f74:	2b c7                	sub    %edi,%eax
477f76:	83 c1 10             	add    $0x10,%ecx
477f79:	c1 f8 04             	sar    $0x4,%eax
477f7c:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
477f82:	3b d8                	cmp    %eax,%ebx
477f84:	7c aa                	jl     0x477f30
477f86:	8b 4d f4             	mov    -0xc(%ebp),%ecx
477f89:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
477f90:	59                   	pop    %ecx
477f91:	5f                   	pop    %edi
477f92:	5e                   	pop    %esi
477f93:	5b                   	pop    %ebx
477f94:	8b 4d f0             	mov    -0x10(%ebp),%ecx
477f97:	33 cd                	xor    %ebp,%ecx
477f99:	e8 88 9a 15 00       	call   0x5d1a26
477f9e:	8b e5                	mov    %ebp,%esp
477fa0:	5d                   	pop    %ebp
477fa1:	c2 18 00             	ret    $0x18
477fa4:	e8 67 f6 fc ff       	call   0x447610
477fa9:	e8 42 e2 15 00       	call   0x5d61f0
477fae:	e8 3d e2 15 00       	call   0x5d61f0
477fb3:	cc                   	int3
477fb4:	cc                   	int3
477fb5:	cc                   	int3
477fb6:	cc                   	int3
477fb7:	cc                   	int3
477fb8:	cc                   	int3
477fb9:	cc                   	int3
477fba:	cc                   	int3
477fbb:	cc                   	int3
477fbc:	cc                   	int3
477fbd:	cc                   	int3
477fbe:	cc                   	int3
477fbf:	cc                   	int3
477fc0:	55                   	push   %ebp
477fc1:	8b ec                	mov    %esp,%ebp
477fc3:	6a ff                	push   $0xffffffff
477fc5:	68 7d a1 5f 00       	push   $0x5fa17d
477fca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
477fd0:	50                   	push   %eax
477fd1:	81 ec 98 00 00 00    	sub    $0x98,%esp
477fd7:	a1 c0 14 69 00       	mov    0x6914c0,%eax
477fdc:	33 c5                	xor    %ebp,%eax
477fde:	89 45 f0             	mov    %eax,-0x10(%ebp)
477fe1:	53                   	push   %ebx
477fe2:	56                   	push   %esi
477fe3:	57                   	push   %edi
477fe4:	50                   	push   %eax
477fe5:	8d 45 f4             	lea    -0xc(%ebp),%eax
477fe8:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
477fee:	8b d9                	mov    %ecx,%ebx
477ff0:	89 9d 6c ff ff ff    	mov    %ebx,-0x94(%ebp)
477ff6:	8b 45 0c             	mov    0xc(%ebp),%eax
477ff9:	8b 7d 08             	mov    0x8(%ebp),%edi
477ffc:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
478002:	8b 45 10             	mov    0x10(%ebp),%eax
478005:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
47800b:	8b 45 14             	mov    0x14(%ebp),%eax
47800e:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
478014:	8b 45 18             	mov    0x18(%ebp),%eax
478017:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
47801d:	8b 43 04             	mov    0x4(%ebx),%eax
478020:	6a 28                	push   $0x28
478022:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
478028:	e8 f8 91 15 00       	call   0x5d1225
47802d:	8b f0                	mov    %eax,%esi
47802f:	83 c4 04             	add    $0x4,%esp
478032:	89 b5 68 ff ff ff    	mov    %esi,-0x98(%ebp)
478038:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
47803f:	85 f6                	test   %esi,%esi
478041:	74 11                	je     0x478054
478043:	6a 00                	push   $0x0
478045:	8b ce                	mov    %esi,%ecx
478047:	e8 74 15 05 00       	call   0x4c95c0
47804c:	c7 06 74 eb 60 00    	movl   $0x60eb74,(%esi)
478052:	eb 02                	jmp    0x478056
478054:	33 f6                	xor    %esi,%esi
478056:	8b 8d 5c ff ff ff    	mov    -0xa4(%ebp),%ecx
47805c:	81 c1 a4 00 00 00    	add    $0xa4,%ecx
478062:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
478069:	89 b5 68 ff ff ff    	mov    %esi,-0x98(%ebp)
47806f:	8b 41 04             	mov    0x4(%ecx),%eax
478072:	3b 41 08             	cmp    0x8(%ecx),%eax
478075:	74 08                	je     0x47807f
478077:	89 30                	mov    %esi,(%eax)
478079:	83 41 04 04          	addl   $0x4,0x4(%ecx)
47807d:	eb 0d                	jmp    0x47808c
47807f:	8d 95 68 ff ff ff    	lea    -0x98(%ebp),%edx
478085:	52                   	push   %edx
478086:	50                   	push   %eax
478087:	e8 94 0e 00 00       	call   0x478f20
47808c:	8b 8d 78 ff ff ff    	mov    -0x88(%ebp),%ecx
478092:	e8 09 06 04 00       	call   0x4b86a0
478097:	84 c0                	test   %al,%al
478099:	0f 85 ee 00 00 00    	jne    0x47818d
47809f:	8b 4f 10             	mov    0x10(%edi),%ecx
4780a2:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4780a7:	2b c1                	sub    %ecx,%eax
4780a9:	83 f8 01             	cmp    $0x1,%eax
4780ac:	0f 82 c2 02 00 00    	jb     0x478374
4780b2:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
4780b6:	8b c7                	mov    %edi,%eax
4780b8:	72 02                	jb     0x4780bc
4780ba:	8b 07                	mov    (%edi),%eax
4780bc:	6a 01                	push   $0x1
4780be:	68 68 67 60 00       	push   $0x606768
4780c3:	51                   	push   %ecx
4780c4:	50                   	push   %eax
4780c5:	57                   	push   %edi
4780c6:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
4780cc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4780cf:	e8 ac 3a 00 00       	call   0x47bb80
4780d4:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
4780da:	8d 45 d8             	lea    -0x28(%ebp),%eax
4780dd:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4780e4:	50                   	push   %eax
4780e5:	8d 45 c0             	lea    -0x40(%ebp),%eax
4780e8:	50                   	push   %eax
4780e9:	e8 12 de ff ff       	call   0x475f00
4780ee:	83 c4 0c             	add    $0xc,%esp
4780f1:	68 bc a5 60 00       	push   $0x60a5bc
4780f6:	6a 07                	push   $0x7
4780f8:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
4780fe:	8b cb                	mov    %ebx,%ecx