475e8c:	85 f6                	test   %esi,%esi
475e8e:	7c 38                	jl     0x475ec8
475e90:	46                   	inc    %esi
475e91:	33 ff                	xor    %edi,%edi
475e93:	8b 45 08             	mov    0x8(%ebp),%eax
475e96:	8b 40 fc             	mov    -0x4(%eax),%eax
475e99:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
475e9f:	8b d7                	mov    %edi,%edx
475ea1:	e8 4a 5f fa ff       	call   0x41bdf0
475ea6:	89 45 fc             	mov    %eax,-0x4(%ebp)
475ea9:	8b 45 fc             	mov    -0x4(%ebp),%eax
475eac:	e8 43 ea ff ff       	call   0x4748f4
475eb1:	84 c0                	test   %al,%al
475eb3:	74 0f                	je     0x475ec4
475eb5:	33 c9                	xor    %ecx,%ecx
475eb7:	b2 0b                	mov    $0xb,%dl
475eb9:	8b 45 fc             	mov    -0x4(%ebp),%eax
475ebc:	8b 18                	mov    (%eax),%ebx
475ebe:	ff 93 ac 00 00 00    	call   *0xac(%ebx)
475ec4:	47                   	inc    %edi
475ec5:	4e                   	dec    %esi
475ec6:	75 cb                	jne    0x475e93
475ec8:	8b 45 08             	mov    0x8(%ebp),%eax
475ecb:	8b 40 fc             	mov    -0x4(%eax),%eax
475ece:	80 b8 9d 00 00 00 0a 	cmpb   $0xa,0x9d(%eax)
475ed5:	75 3b                	jne    0x475f12
475ed7:	8b 45 08             	mov    0x8(%ebp),%eax
475eda:	8b 40 fc             	mov    -0x4(%eax),%eax
475edd:	8b 40 44             	mov    0x44(%eax),%eax
475ee0:	8b 70 08             	mov    0x8(%eax),%esi
475ee3:	4e                   	dec    %esi
475ee4:	85 f6                	test   %esi,%esi
475ee6:	7c 2a                	jl     0x475f12
475ee8:	46                   	inc    %esi
475ee9:	33 ff                	xor    %edi,%edi
475eeb:	6a 00                	push   $0x0
475eed:	8b 45 08             	mov    0x8(%ebp),%eax
475ef0:	8b 40 fc             	mov    -0x4(%eax),%eax
475ef3:	8b 40 44             	mov    0x44(%eax),%eax
475ef6:	8b d7                	mov    %edi,%edx
475ef8:	e8 f3 5e fa ff       	call   0x41bdf0
475efd:	8b 55 08             	mov    0x8(%ebp),%edx
475f00:	8b 4a f8             	mov    -0x8(%edx),%ecx
475f03:	8b 55 08             	mov    0x8(%ebp),%edx
475f06:	8a 52 f7             	mov    -0x9(%edx),%dl
475f09:	e8 86 c3 ff ff       	call   0x472294
475f0e:	47                   	inc    %edi
475f0f:	4e                   	dec    %esi
475f10:	75 d9                	jne    0x475eeb
475f12:	5f                   	pop    %edi
475f13:	5e                   	pop    %esi
475f14:	5b                   	pop    %ebx
475f15:	59                   	pop    %ecx
475f16:	5d                   	pop    %ebp
475f17:	c3                   	ret
475f18:	55                   	push   %ebp
475f19:	8b ec                	mov    %esp,%ebp
475f1b:	53                   	push   %ebx
475f1c:	56                   	push   %esi
475f1d:	57                   	push   %edi
475f1e:	8b 45 08             	mov    0x8(%ebp),%eax
475f21:	8b 40 fc             	mov    -0x4(%eax),%eax
475f24:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
475f2a:	85 c0                	test   %eax,%eax
475f2c:	74 39                	je     0x475f67
475f2e:	8b 55 08             	mov    0x8(%ebp),%edx
475f31:	8b 70 08             	mov    0x8(%eax),%esi
475f34:	4e                   	dec    %esi
475f35:	85 f6                	test   %esi,%esi
475f37:	7c 2e                	jl     0x475f67
475f39:	46                   	inc    %esi
475f3a:	33 ff                	xor    %edi,%edi
475f3c:	8b 45 08             	mov    0x8(%ebp),%eax
475f3f:	8b 40 fc             	mov    -0x4(%eax),%eax
475f42:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
475f48:	8b d7                	mov    %edi,%edx
475f4a:	e8 a1 5e fa ff       	call   0x41bdf0
475f4f:	8b d8                	mov    %eax,%ebx
475f51:	8b c3                	mov    %ebx,%eax
475f53:	e8 9c e9 ff ff       	call   0x4748f4
475f58:	84 c0                	test   %al,%al
475f5a:	74 07                	je     0x475f63
475f5c:	8b c3                	mov    %ebx,%eax
475f5e:	e8 a9 14 00 00       	call   0x47740c
475f63:	47                   	inc    %edi
475f64:	4e                   	dec    %esi
475f65:	75 d5                	jne    0x475f3c
475f67:	5f                   	pop    %edi
475f68:	5e                   	pop    %esi
475f69:	5b                   	pop    %ebx
475f6a:	5d                   	pop    %ebp
475f6b:	c3                   	ret
475f6c:	55                   	push   %ebp
475f6d:	8b ec                	mov    %esp,%ebp
475f6f:	83 c4 f4             	add    $0xfffffff4,%esp
475f72:	53                   	push   %ebx
475f73:	56                   	push   %esi
475f74:	89 4d f8             	mov    %ecx,-0x8(%ebp)
475f77:	88 55 f7             	mov    %dl,-0x9(%ebp)
475f7a:	89 45 fc             	mov    %eax,-0x4(%ebp)
475f7d:	8b 45 fc             	mov    -0x4(%ebp),%eax
475f80:	e8 33 01 00 00       	call   0x4760b8
475f85:	84 c0                	test   %al,%al
475f87:	75 0c                	jne    0x475f95
475f89:	8b 45 fc             	mov    -0x4(%ebp),%eax
475f8c:	80 b8 9d 00 00 00 0a 	cmpb   $0xa,0x9d(%eax)
475f93:	75 04                	jne    0x475f99
475f95:	33 db                	xor    %ebx,%ebx
475f97:	eb 02                	jmp    0x475f9b
475f99:	b3 01                	mov    $0x1,%bl
475f9b:	33 c0                	xor    %eax,%eax
475f9d:	8a 45 f7             	mov    -0x9(%ebp),%al
475fa0:	83 f8 09             	cmp    $0x9,%eax
475fa3:	0f 87 c1 00 00 00    	ja     0x47606a
475fa9:	ff 24 85 b0 5f 47 00 	jmp    *0x475fb0(,%eax,4)
475fb0:	d8 5f 47             	fcomps 0x47(%edi)
475fb3:	00 6a 60             	add    %ch,0x60(%edx)
475fb6:	47                   	inc    %edi
475fb7:	00 1a                	add    %bl,(%edx)
475fb9:	60                   	pusha
475fba:	47                   	inc    %edi
475fbb:	00 1a                	add    %bl,(%edx)
475fbd:	60                   	pusha
475fbe:	47                   	inc    %edi
475fbf:	00 23                	add    %ah,(%ebx)
475fc1:	60                   	pusha
475fc2:	47                   	inc    %edi
475fc3:	00 6a 60             	add    %ch,0x60(%edx)
475fc6:	47                   	inc    %edi
475fc7:	00 45 60             	add    %al,0x60(%ebp)
475fca:	47                   	inc    %edi
475fcb:	00 11                	add    %dl,(%ecx)
475fcd:	60                   	pusha
475fce:	47                   	inc    %edi
475fcf:	00 05 60 47 00 f9    	add    %al,0xf9004760
475fd5:	5f                   	pop    %edi
475fd6:	47                   	inc    %edi
475fd7:	00 8b 45 f8 8a 40    	add    %cl,0x408af845(%ebx)
475fdd:	42                   	inc    %edx
475fde:	84 c0                	test   %al,%al
475fe0:	74 04                	je     0x475fe6
475fe2:	2c 03                	sub    $0x3,%al
475fe4:	75 0a                	jne    0x475ff0
475fe6:	b2 01                	mov    $0x1,%dl
475fe8:	8b 45 fc             	mov    -0x4(%ebp),%eax
475feb:	e8 70 e5 ff ff       	call   0x474560
475ff0:	55                   	push   %ebp
475ff1:	e8 b6 fd ff ff       	call   0x475dac
475ff6:	59                   	pop    %ecx
475ff7:	eb 71                	jmp    0x47606a
475ff9:	8b 45 fc             	mov    -0x4(%ebp),%eax
475ffc:	8b 40 40             	mov    0x40(%eax),%eax
475fff:	c6 40 35 00          	movb   $0x0,0x35(%eax)
476003:	eb 65                	jmp    0x47606a
476005:	8b 45 fc             	mov    -0x4(%ebp),%eax
476008:	8b 40 38             	mov    0x38(%eax),%eax
47600b:	c6 40 20 00          	movb   $0x0,0x20(%eax)
47600f:	eb 59                	jmp    0x47606a
476011:	55                   	push   %ebp
476012:	e8 01 ff ff ff       	call   0x475f18
476017:	59                   	pop    %ecx
476018:	eb 50                	jmp    0x47606a
47601a:	55                   	push   %ebp
47601b:	e8 2c fe ff ff       	call   0x475e4c
476020:	59                   	pop    %ecx
476021:	eb 47                	jmp    0x47606a
476023:	8b 45 fc             	mov    -0x4(%ebp),%eax
476026:	8b 40 40             	mov    0x40(%eax),%eax
476029:	c6 40 35 00          	movb   $0x0,0x35(%eax)
47602d:	8b 45 fc             	mov    -0x4(%ebp),%eax
476030:	e8 83 00 00 00       	call   0x4760b8
476035:	84 c0                	test   %al,%al
476037:	74 31                	je     0x47606a
476039:	8b 45 fc             	mov    -0x4(%ebp),%eax
47603c:	c6 80 9e 00 00 00 04 	movb   $0x4,0x9e(%eax)
476043:	eb 25                	jmp    0x47606a
476045:	8b 45 fc             	mov    -0x4(%ebp),%eax
476048:	e8 6b 00 00 00       	call   0x4760b8
47604d:	84 c0                	test   %al,%al
47604f:	74 19                	je     0x47606a
476051:	c6 45 f7 0e          	movb   $0xe,-0x9(%ebp)
476055:	8b 45 fc             	mov    -0x4(%ebp),%eax
476058:	80 b8 9d 00 00 00 00 	cmpb   $0x0,0x9d(%eax)
47605f:	0f 95 c0             	setne  %al
476062:	83 e0 7f             	and    $0x7f,%eax
476065:	89 45 f8             	mov    %eax,-0x8(%ebp)
476068:	b3 01                	mov    $0x1,%bl
47606a:	84 db                	test   %bl,%bl
47606c:	74 41                	je     0x4760af
47606e:	8b 45 fc             	mov    -0x4(%ebp),%eax
476071:	8b 40 44             	mov    0x44(%eax),%eax
476074:	8b 58 08             	mov    0x8(%eax),%ebx
476077:	4b                   	dec    %ebx
476078:	85 db                	test   %ebx,%ebx
47607a:	7c 1f                	jl     0x47609b
47607c:	43                   	inc    %ebx
47607d:	33 f6                	xor    %esi,%esi
47607f:	8b 45 fc             	mov    -0x4(%ebp),%eax
476082:	8b 40 44             	mov    0x44(%eax),%eax
476085:	8b d6                	mov    %esi,%edx
476087:	e8 64 5d fa ff       	call   0x41bdf0
47608c:	8b 4d f8             	mov    -0x8(%ebp),%ecx
47608f:	8a 55 f7             	mov    -0x9(%ebp),%dl
476092:	e8 75 c2 ff ff       	call   0x47230c
476097:	46                   	inc    %esi
476098:	4b                   	dec    %ebx
476099:	75 e4                	jne    0x47607f
47609b:	8b 45 fc             	mov    -0x4(%ebp),%eax
47609e:	8b 40 6c             	mov    0x6c(%eax),%eax
4760a1:	85 c0                	test   %eax,%eax
4760a3:	74 0a                	je     0x4760af
4760a5:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4760a8:	8a 55 f7             	mov    -0x9(%ebp),%dl
4760ab:	8b 18                	mov    (%eax),%ebx
4760ad:	ff 13                	call   *(%ebx)
4760af:	5e                   	pop    %esi
4760b0:	5b                   	pop    %ebx
4760b1:	8b e5                	mov    %ebp,%esp
4760b3:	5d                   	pop    %ebp
4760b4:	c3                   	ret
4760b5:	8d 40 00             	lea    0x0(%eax),%eax
4760b8:	83 78 70 00          	cmpl   $0x0,0x70(%eax)
4760bc:	0f 95 c0             	setne  %al
4760bf:	c3                   	ret
4760c0:	83 78 70 00          	cmpl   $0x0,0x70(%eax)
4760c4:	75 13                	jne    0x4760d9
4760c6:	8a 90 9d 00 00 00    	mov    0x9d(%eax),%dl
4760cc:	88 90 9f 00 00 00    	mov    %dl,0x9f(%eax)
4760d2:	c6 80 9e 00 00 00 02 	movb   $0x2,0x9e(%eax)
4760d9:	ff 40 70             	incl   0x70(%eax)
4760dc:	c3                   	ret
4760dd:	8d 40 00             	lea    0x0(%eax),%eax
4760e0:	53                   	push   %ebx
4760e1:	56                   	push   %esi
4760e2:	8b f0                	mov    %eax,%esi
4760e4:	83 7e 70 00          	cmpl   $0x0,0x70(%esi)
4760e8:	74 49                	je     0x476133
4760ea:	ff 4e 70             	decl   0x70(%esi)
4760ed:	83 7e 70 00          	cmpl   $0x0,0x70(%esi)
4760f1:	75 40                	jne    0x476133
4760f3:	8a 86 9f 00 00 00    	mov    0x9f(%esi),%al
4760f9:	3a 86 9d 00 00 00    	cmp    0x9d(%esi),%al
4760ff:	74 0e                	je     0x47610f
476101:	33 c9                	xor    %ecx,%ecx
476103:	b2 06                	mov    $0x6,%dl
476105:	8b c6                	mov    %esi,%eax
476107:	8b 18                	mov    (%eax),%ebx
476109:	ff 93 ac 00 00 00    	call   *0xac(%ebx)
47610f:	80 be 9f 00 00 00 00 	cmpb   $0x0,0x9f(%esi)
476116:	74 1b                	je     0x476133
476118:	80 be 9d 00 00 00 00 	cmpb   $0x0,0x9d(%esi)
47611f:	74 12                	je     0x476133
476121:	33 c9                	xor    %ecx,%ecx
476123:	8a 96 9e 00 00 00    	mov    0x9e(%esi),%dl
476129:	8b c6                	mov    %esi,%eax
47612b:	8b 18                	mov    (%eax),%ebx
47612d:	ff 93 ac 00 00 00    	call   *0xac(%ebx)
476133:	5e                   	pop    %esi
476134:	5b                   	pop    %ebx
476135:	c3                   	ret
476136:	8b c0                	mov    %eax,%eax
476138:	55                   	push   %ebp
476139:	8b ec                	mov    %esp,%ebp
47613b:	6a 00                	push   $0x0
47613d:	53                   	push   %ebx
47613e:	56                   	push   %esi
47613f:	8b f0                	mov    %eax,%esi
476141:	33 c0                	xor    %eax,%eax
476143:	55                   	push   %ebp
476144:	68 96 61 47 00       	push   $0x476196
476149:	64 ff 30             	push   %fs:(%eax)
47614c:	64 89 20             	mov    %esp,%fs:(%eax)
47614f:	8a 86 9d 00 00 00    	mov    0x9d(%esi),%al
476155:	04 fe                	add    $0xfe,%al
476157:	2c 03                	sub    $0x3,%al
476159:	72 17                	jb     0x476172
47615b:	8d 55 fc             	lea    -0x4(%ebp),%edx
47615e:	a1 c8 b1 49 00       	mov    0x49b1c8,%eax
476163:	e8 d0 00 f9 ff       	call   0x406238
476168:	8b 45 fc             	mov    -0x4(%ebp),%eax
47616b:	8b d6                	mov    %esi,%edx
47616d:	e8 0e 39 ff ff       	call   0x469a80
476172:	33 c9                	xor    %ecx,%ecx
476174:	b2 05                	mov    $0x5,%dl
476176:	8b c6                	mov    %esi,%eax
476178:	8b 18                	mov    (%eax),%ebx
47617a:	ff 93 ac 00 00 00    	call   *0xac(%ebx)
476180:	33 c0                	xor    %eax,%eax
476182:	5a                   	pop    %edx
476183:	59                   	pop    %ecx
476184:	59                   	pop    %ecx
476185:	64 89 10             	mov    %edx,%fs:(%eax)
476188:	68 9d 61 47 00       	push   $0x47619d
47618d:	8d 45 fc             	lea    -0x4(%ebp),%eax
476190:	e8 cf df f8 ff       	call   0x404164
476195:	c3                   	ret
476196:	e9 cd d9 f8 ff       	jmp    0x403b68
47619b:	eb f0                	jmp    0x47618d
47619d:	5e                   	pop    %esi
47619e:	5b                   	pop    %ebx
47619f:	59                   	pop    %ecx
4761a0:	5d                   	pop    %ebp
4761a1:	c3                   	ret
4761a2:	8b c0                	mov    %eax,%eax
4761a4:	33 c0                	xor    %eax,%eax
4761a6:	c3                   	ret
4761a7:	90                   	nop
4761a8:	c3                   	ret
4761a9:	8d 40 00             	lea    0x0(%eax),%eax
4761ac:	55                   	push   %ebp
4761ad:	8b ec                	mov    %esp,%ebp
4761af:	83 c4 f0             	add    $0xfffffff0,%esp
4761b2:	53                   	push   %ebx
4761b3:	56                   	push   %esi
4761b4:	57                   	push   %edi
4761b5:	33 c9                	xor    %ecx,%ecx
4761b7:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4761ba:	8b da                	mov    %edx,%ebx
4761bc:	89 45 fc             	mov    %eax,-0x4(%ebp)
4761bf:	33 c0                	xor    %eax,%eax
4761c1:	55                   	push   %ebp
4761c2:	68 1e 63 47 00       	push   $0x47631e
4761c7:	64 ff 30             	push   %fs:(%eax)
4761ca:	64 89 20             	mov    %esp,%fs:(%eax)
4761cd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4761d0:	8b 40 5c             	mov    0x5c(%eax),%eax
4761d3:	e8 10 f2 f8 ff       	call   0x4053e8
4761d8:	40                   	inc    %eax
4761d9:	89 45 f8             	mov    %eax,-0x8(%ebp)
4761dc:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
4761df:	0f 84 1d 01 00 00    	je     0x476302
4761e5:	85 db                	test   %ebx,%ebx
4761e7:	7e 19                	jle    0x476202
4761e9:	53                   	push   %ebx
4761ea:	8d 45 f0             	lea    -0x10(%ebp),%eax
4761ed:	b9 01 00 00 00       	mov    $0x1,%ecx
4761f2:	8b 15 58 90 46 00    	mov    0x469058,%edx
4761f8:	e8 9f f3 f8 ff       	call   0x40559c
4761fd:	83 c4 04             	add    $0x4,%esp
476200:	eb 0e                	jmp    0x476210
476202:	8d 45 f0             	lea    -0x10(%ebp),%eax
476205:	8b 15 58 90 46 00    	mov    0x469058,%edx
47620b:	e8 ac f4 f8 ff       	call   0x4056bc
476210:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
476213:	7d 4a                	jge    0x47625f
476215:	85 db                	test   %ebx,%ebx
476217:	74 13                	je     0x47622c
476219:	8b cb                	mov    %ebx,%ecx
47621b:	c1 e1 02             	shl    $0x2,%ecx
47621e:	8b 55 f0             	mov    -0x10(%ebp),%edx