476d34:	c6 80 a0 00 00 00 00 	movb   $0x0,0xa0(%eax)
476d3b:	8b 45 fc             	mov    -0x4(%ebp),%eax
476d3e:	c6 80 a1 00 00 00 00 	movb   $0x0,0xa1(%eax)
476d45:	8b 45 fc             	mov    -0x4(%ebp),%eax
476d48:	8b 40 50             	mov    0x50(%eax),%eax
476d4b:	89 45 f4             	mov    %eax,-0xc(%ebp)
476d4e:	33 c0                	xor    %eax,%eax
476d50:	89 45 f0             	mov    %eax,-0x10(%ebp)
476d53:	33 d2                	xor    %edx,%edx
476d55:	55                   	push   %ebp
476d56:	68 78 6e 47 00       	push   $0x476e78
476d5b:	64 ff 32             	push   %fs:(%edx)
476d5e:	64 89 22             	mov    %esp,%fs:(%edx)
476d61:	85 db                	test   %ebx,%ebx
476d63:	7e 6b                	jle    0x476dd0
476d65:	8b 55 fc             	mov    -0x4(%ebp),%edx
476d68:	8b 52 54             	mov    0x54(%edx),%edx
476d6b:	8b 45 fc             	mov    -0x4(%ebp),%eax
476d6e:	8b 40 50             	mov    0x50(%eax),%eax
476d71:	8b c8                	mov    %eax,%ecx
476d73:	49                   	dec    %ecx
476d74:	3b d1                	cmp    %ecx,%edx
476d76:	7d 08                	jge    0x476d80
476d78:	8b 45 fc             	mov    -0x4(%ebp),%eax
476d7b:	ff 40 54             	incl   0x54(%eax)
476d7e:	eb 48                	jmp    0x476dc8
476d80:	8b 55 fc             	mov    -0x4(%ebp),%edx
476d83:	3b 42 4c             	cmp    0x4c(%edx),%eax
476d86:	7d 04                	jge    0x476d8c
476d88:	33 f6                	xor    %esi,%esi
476d8a:	eb 05                	jmp    0x476d91
476d8c:	be 01 00 00 00       	mov    $0x1,%esi
476d91:	8b 45 fc             	mov    -0x4(%ebp),%eax
476d94:	8b 10                	mov    (%eax),%edx
476d96:	ff 92 40 01 00 00    	call   *0x140(%edx)
476d9c:	84 c0                	test   %al,%al
476d9e:	74 1c                	je     0x476dbc
476da0:	29 75 f0             	sub    %esi,-0x10(%ebp)
476da3:	8b 45 fc             	mov    -0x4(%ebp),%eax
476da6:	8b 40 54             	mov    0x54(%eax),%eax
476da9:	8b 55 fc             	mov    -0x4(%ebp),%edx
476dac:	8b 52 50             	mov    0x50(%edx),%edx
476daf:	4a                   	dec    %edx
476db0:	3b c2                	cmp    %edx,%eax
476db2:	7d 14                	jge    0x476dc8
476db4:	8b 45 fc             	mov    -0x4(%ebp),%eax
476db7:	ff 40 54             	incl   0x54(%eax)
476dba:	eb 0c                	jmp    0x476dc8
476dbc:	8b 45 fc             	mov    -0x4(%ebp),%eax
476dbf:	c6 80 a1 00 00 00 01 	movb   $0x1,0xa1(%eax)
476dc6:	eb 08                	jmp    0x476dd0
476dc8:	4b                   	dec    %ebx
476dc9:	ff 45 f8             	incl   -0x8(%ebp)
476dcc:	85 db                	test   %ebx,%ebx
476dce:	7f 95                	jg     0x476d65
476dd0:	85 db                	test   %ebx,%ebx
476dd2:	7d 5f                	jge    0x476e33
476dd4:	8b 45 fc             	mov    -0x4(%ebp),%eax
476dd7:	83 78 54 00          	cmpl   $0x0,0x54(%eax)
476ddb:	7e 08                	jle    0x476de5
476ddd:	8b 45 fc             	mov    -0x4(%ebp),%eax
476de0:	ff 48 54             	decl   0x54(%eax)
476de3:	eb 46                	jmp    0x476e2b
476de5:	8b 45 fc             	mov    -0x4(%ebp),%eax
476de8:	8b 40 50             	mov    0x50(%eax),%eax
476deb:	8b 55 fc             	mov    -0x4(%ebp),%edx
476dee:	3b 42 4c             	cmp    0x4c(%edx),%eax
476df1:	7d 04                	jge    0x476df7
476df3:	33 f6                	xor    %esi,%esi
476df5:	eb 05                	jmp    0x476dfc
476df7:	be 01 00 00 00       	mov    $0x1,%esi
476dfc:	8b 45 fc             	mov    -0x4(%ebp),%eax
476dff:	8b 10                	mov    (%eax),%edx
476e01:	ff 92 48 01 00 00    	call   *0x148(%edx)
476e07:	84 c0                	test   %al,%al
476e09:	74 14                	je     0x476e1f
476e0b:	01 75 f0             	add    %esi,-0x10(%ebp)
476e0e:	8b 45 fc             	mov    -0x4(%ebp),%eax
476e11:	83 78 54 00          	cmpl   $0x0,0x54(%eax)
476e15:	7e 14                	jle    0x476e2b
476e17:	8b 45 fc             	mov    -0x4(%ebp),%eax
476e1a:	ff 48 54             	decl   0x54(%eax)
476e1d:	eb 0c                	jmp    0x476e2b
476e1f:	8b 45 fc             	mov    -0x4(%ebp),%eax
476e22:	c6 80 a0 00 00 00 01 	movb   $0x1,0xa0(%eax)
476e29:	eb 08                	jmp    0x476e33
476e2b:	43                   	inc    %ebx
476e2c:	ff 4d f8             	decl   -0x8(%ebp)
476e2f:	85 db                	test   %ebx,%ebx
476e31:	7c a1                	jl     0x476dd4
476e33:	33 c0                	xor    %eax,%eax
476e35:	5a                   	pop    %edx
476e36:	59                   	pop    %ecx
476e37:	59                   	pop    %ecx
476e38:	64 89 10             	mov    %edx,%fs:(%eax)
476e3b:	68 7f 6e 47 00       	push   $0x476e7f
476e40:	8b 45 fc             	mov    -0x4(%ebp),%eax
476e43:	8b 40 50             	mov    0x50(%eax),%eax
476e46:	3b 45 f4             	cmp    -0xc(%ebp),%eax
476e49:	74 11                	je     0x476e5c
476e4b:	33 c9                	xor    %ecx,%ecx
476e4d:	b2 02                	mov    $0x2,%dl
476e4f:	8b 45 fc             	mov    -0x4(%ebp),%eax
476e52:	8b 18                	mov    (%eax),%ebx
476e54:	ff 93 ac 00 00 00    	call   *0xac(%ebx)
476e5a:	eb 10                	jmp    0x476e6c
476e5c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
476e5f:	b2 03                	mov    $0x3,%dl
476e61:	8b 45 fc             	mov    -0x4(%ebp),%eax
476e64:	8b 18                	mov    (%eax),%ebx
476e66:	ff 93 ac 00 00 00    	call   *0xac(%ebx)
476e6c:	8b 45 fc             	mov    -0x4(%ebp),%eax
476e6f:	8b 10                	mov    (%eax),%edx
476e71:	ff 92 d8 00 00 00    	call   *0xd8(%edx)
476e77:	c3                   	ret
476e78:	e9 eb cc f8 ff       	jmp    0x403b68
476e7d:	eb c1                	jmp    0x476e40
476e7f:	8b 45 f8             	mov    -0x8(%ebp),%eax
476e82:	5e                   	pop    %esi
476e83:	5b                   	pop    %ebx
476e84:	8b e5                	mov    %ebp,%esp
476e86:	5d                   	pop    %ebp
476e87:	c3                   	ret
476e88:	83 78 7c 00          	cmpl   $0x0,0x7c(%eax)
476e8c:	7e 09                	jle    0x476e97
476e8e:	8b 10                	mov    (%eax),%edx
476e90:	ff 92 74 01 00 00    	call   *0x174(%edx)
476e96:	c3                   	ret
476e97:	ba 01 00 00 00       	mov    $0x1,%edx
476e9c:	e8 43 fe ff ff       	call   0x476ce4
476ea1:	c3                   	ret
476ea2:	8b c0                	mov    %eax,%eax
476ea4:	ba 01 00 00 00       	mov    $0x1,%edx
476ea9:	e8 36 fe ff ff       	call   0x476ce4
476eae:	c3                   	ret
476eaf:	90                   	nop
476eb0:	53                   	push   %ebx
476eb1:	56                   	push   %esi
476eb2:	8b f2                	mov    %edx,%esi
476eb4:	8b d8                	mov    %eax,%ebx
476eb6:	85 f6                	test   %esi,%esi
476eb8:	7e 15                	jle    0x476ecf
476eba:	8b c3                	mov    %ebx,%eax
476ebc:	8b 10                	mov    (%eax),%edx
476ebe:	ff 92 84 00 00 00    	call   *0x84(%edx)
476ec4:	b2 0a                	mov    $0xa,%dl
476ec6:	8b c3                	mov    %ebx,%eax
476ec8:	e8 67 d6 ff ff       	call   0x474534
476ecd:	eb 12                	jmp    0x476ee1
476ecf:	80 bb 9d 00 00 00 0a 	cmpb   $0xa,0x9d(%ebx)
476ed6:	75 09                	jne    0x476ee1
476ed8:	b2 01                	mov    $0x1,%dl
476eda:	8b c3                	mov    %ebx,%eax
476edc:	e8 53 d6 ff ff       	call   0x474534
476ee1:	89 73 7c             	mov    %esi,0x7c(%ebx)
476ee4:	5e                   	pop    %esi
476ee5:	5b                   	pop    %ebx
476ee6:	c3                   	ret
476ee7:	90                   	nop
476ee8:	53                   	push   %ebx
476ee9:	56                   	push   %esi
476eea:	8b d8                	mov    %eax,%ebx
476eec:	8b c3                	mov    %ebx,%eax
476eee:	e8 45 f2 ff ff       	call   0x476138
476ef3:	8a 83 9d 00 00 00    	mov    0x9d(%ebx),%al
476ef9:	04 fe                	add    $0xfe,%al
476efb:	2c 02                	sub    $0x2,%al
476efd:	73 62                	jae    0x476f61
476eff:	33 c9                	xor    %ecx,%ecx
476f01:	b2 07                	mov    $0x7,%dl
476f03:	8b c3                	mov    %ebx,%eax
476f05:	8b 30                	mov    (%eax),%esi
476f07:	ff 96 ac 00 00 00    	call   *0xac(%esi)
476f0d:	8b c3                	mov    %ebx,%eax
476f0f:	8b 10                	mov    (%eax),%edx
476f11:	ff 92 f4 00 00 00    	call   *0xf4(%edx)
476f17:	53                   	push   %ebx
476f18:	8b 03                	mov    (%ebx),%eax
476f1a:	8b 80 d8 01 00 00    	mov    0x1d8(%eax),%eax
476f20:	50                   	push   %eax
476f21:	ff b3 5c 01 00 00    	push   0x15c(%ebx)
476f27:	ff b3 58 01 00 00    	push   0x158(%ebx)
476f2d:	8b c3                	mov    %ebx,%eax
476f2f:	e8 48 01 00 00       	call   0x47707c
476f34:	8b c3                	mov    %ebx,%eax
476f36:	8b 10                	mov    (%eax),%edx
476f38:	ff 92 0c 01 00 00    	call   *0x10c(%edx)
476f3e:	b2 01                	mov    $0x1,%dl
476f40:	8b c3                	mov    %ebx,%eax
476f42:	e8 ed d5 ff ff       	call   0x474534
476f47:	8a 15 64 6f 47 00    	mov    0x476f64,%dl
476f4d:	8b c3                	mov    %ebx,%eax
476f4f:	8b 08                	mov    (%eax),%ecx
476f51:	ff 91 50 02 00 00    	call   *0x250(%ecx)
476f57:	8b c3                	mov    %ebx,%eax
476f59:	8b 10                	mov    (%eax),%edx
476f5b:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
476f61:	5e                   	pop    %esi
476f62:	5b                   	pop    %ebx
476f63:	c3                   	ret
476f64:	00 00                	add    %al,(%eax)
476f66:	00 00                	add    %al,(%eax)
476f68:	55                   	push   %ebp
476f69:	8b ec                	mov    %esp,%ebp
476f6b:	51                   	push   %ecx
476f6c:	56                   	push   %esi
476f6d:	57                   	push   %edi
476f6e:	8b 45 08             	mov    0x8(%ebp),%eax
476f71:	8b 40 fc             	mov    -0x4(%eax),%eax
476f74:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
476f7a:	85 c0                	test   %eax,%eax
476f7c:	74 44                	je     0x476fc2
476f7e:	8b 55 08             	mov    0x8(%ebp),%edx
476f81:	8b 78 08             	mov    0x8(%eax),%edi
476f84:	4f                   	dec    %edi
476f85:	85 ff                	test   %edi,%edi
476f87:	7c 39                	jl     0x476fc2
476f89:	47                   	inc    %edi
476f8a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
476f91:	8b 45 08             	mov    0x8(%ebp),%eax
476f94:	8b 40 fc             	mov    -0x4(%eax),%eax
476f97:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
476f9d:	8b 55 fc             	mov    -0x4(%ebp),%edx
476fa0:	e8 4b 4e fa ff       	call   0x41bdf0
476fa5:	8b f0                	mov    %eax,%esi
476fa7:	8b c6                	mov    %esi,%eax
476fa9:	e8 46 d9 ff ff       	call   0x4748f4
476fae:	84 c0                	test   %al,%al
476fb0:	74 0a                	je     0x476fbc
476fb2:	8b c6                	mov    %esi,%eax
476fb4:	8b 10                	mov    (%eax),%edx
476fb6:	ff 92 0c 02 00 00    	call   *0x20c(%edx)
476fbc:	ff 45 fc             	incl   -0x4(%ebp)
476fbf:	4f                   	dec    %edi
476fc0:	75 cf                	jne    0x476f91
476fc2:	5f                   	pop    %edi
476fc3:	5e                   	pop    %esi
476fc4:	59                   	pop    %ecx
476fc5:	5d                   	pop    %ebp
476fc6:	c3                   	ret
476fc7:	90                   	nop
476fc8:	55                   	push   %ebp
476fc9:	8b ec                	mov    %esp,%ebp
476fcb:	51                   	push   %ecx
476fcc:	53                   	push   %ebx
476fcd:	89 45 fc             	mov    %eax,-0x4(%ebp)
476fd0:	8b 45 fc             	mov    -0x4(%ebp),%eax
476fd3:	8a 80 9d 00 00 00    	mov    0x9d(%eax),%al
476fd9:	04 fe                	add    $0xfe,%al
476fdb:	2c 02                	sub    $0x2,%al
476fdd:	0f 83 90 00 00 00    	jae    0x477073
476fe3:	55                   	push   %ebp
476fe4:	e8 7f ff ff ff       	call   0x476f68
476fe9:	59                   	pop    %ecx
476fea:	33 c9                	xor    %ecx,%ecx
476fec:	b2 07                	mov    $0x7,%dl
476fee:	8b 45 fc             	mov    -0x4(%ebp),%eax
476ff1:	8b 18                	mov    (%eax),%ebx
476ff3:	ff 93 ac 00 00 00    	call   *0xac(%ebx)
476ff9:	8b 45 fc             	mov    -0x4(%ebp),%eax
476ffc:	8b 10                	mov    (%eax),%edx
476ffe:	ff 92 dc 00 00 00    	call   *0xdc(%edx)
477004:	8b 45 fc             	mov    -0x4(%ebp),%eax
477007:	80 b8 9d 00 00 00 03 	cmpb   $0x3,0x9d(%eax)
47700e:	0f 94 c3             	sete   %bl
477011:	84 db                	test   %bl,%bl
477013:	74 0b                	je     0x477020
477015:	8b 45 fc             	mov    -0x4(%ebp),%eax
477018:	8b 10                	mov    (%eax),%edx
47701a:	ff 92 fc 00 00 00    	call   *0xfc(%edx)
477020:	8b 45 fc             	mov    -0x4(%ebp),%eax
477023:	e8 30 f9 ff ff       	call   0x476958
477028:	8b 45 fc             	mov    -0x4(%ebp),%eax
47702b:	8b 10                	mov    (%eax),%edx
47702d:	ff 92 5c 01 00 00    	call   *0x15c(%edx)
477033:	8b 45 fc             	mov    -0x4(%ebp),%eax
477036:	8b 10                	mov    (%eax),%edx
477038:	ff 92 0c 01 00 00    	call   *0x10c(%edx)
47703e:	b2 01                	mov    $0x1,%dl
477040:	8b 45 fc             	mov    -0x4(%ebp),%eax
477043:	e8 ec d4 ff ff       	call   0x474534
477048:	8a 15 78 70 47 00    	mov    0x477078,%dl
47704e:	8b 45 fc             	mov    -0x4(%ebp),%eax
477051:	8b 08                	mov    (%eax),%ecx
477053:	ff 91 50 02 00 00    	call   *0x250(%ecx)
477059:	8b 45 fc             	mov    -0x4(%ebp),%eax
47705c:	8b 10                	mov    (%eax),%edx
47705e:	ff 92 b8 00 00 00    	call   *0xb8(%edx)
477064:	84 db                	test   %bl,%bl
477066:	74 0b                	je     0x477073
477068:	8b 45 fc             	mov    -0x4(%ebp),%eax
47706b:	8b 10                	mov    (%eax),%edx
47706d:	ff 92 d8 00 00 00    	call   *0xd8(%edx)
477073:	5b                   	pop    %ebx
477074:	59                   	pop    %ecx
477075:	5d                   	pop    %ebp
477076:	c3                   	ret
477077:	00 00                	add    %al,(%eax)
477079:	00 00                	add    %al,(%eax)
47707b:	00 55 8b             	add    %dl,-0x75(%ebp)
47707e:	ec                   	in     (%dx),%al
47707f:	83 c4 f8             	add    $0xfffffff8,%esp
477082:	53                   	push   %ebx
477083:	56                   	push   %esi
477084:	57                   	push   %edi
477085:	89 45 fc             	mov    %eax,-0x4(%ebp)
477088:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
47708c:	33 d2                	xor    %edx,%edx
47708e:	55                   	push   %ebp
47708f:	68 b6 70 47 00       	push   $0x4770b6
477094:	64 ff 32             	push   %fs:(%edx)
477097:	64 89 22             	mov    %esp,%fs:(%edx)
47709a:	8b 45 fc             	mov    -0x4(%ebp),%eax
47709d:	e8 b6 f8 ff ff       	call   0x476958
4770a2:	8b 45 14             	mov    0x14(%ebp),%eax
4770a5:	ff 55 10             	call   *0x10(%ebp)
4770a8:	c6 45 fb 01          	movb   $0x1,-0x5(%ebp)
4770ac:	33 c0                	xor    %eax,%eax
4770ae:	5a                   	pop    %edx
4770af:	59                   	pop    %ecx
4770b0:	59                   	pop    %ecx
4770b1:	64 89 10             	mov    %edx,%fs:(%eax)
4770b4:	eb 46                	jmp    0x4770fc
4770b6:	e9 25 c9 f8 ff       	jmp    0x4039e0
4770bb:	01 00                	add    %eax,(%eax)
4770bd:	00 00                	add    %al,(%eax)
4770bf:	b8 44 46 00 c7       	mov    $0xc7004644,%eax
4770c4:	70 47                	jo     0x47710d
4770c6:	00 c6                	add    %al,%dh
4770c8:	45                   	inc    %ebp
4770c9:	fa                   	cli
4770ca:	00 66 83             	add    %ah,-0x7d(%esi)
4770cd:	7d 0a                	jge    0x4770d9
4770cf:	00 74 0f 8d          	add    %dh,-0x73(%edi,%ecx,1)
4770d3:	55                   	push   %ebp
4770d4:	fa                   	cli
4770d5:	52                   	push   %edx
4770d6:	8b c8                	mov    %eax,%ecx
4770d8:	8b 55 fc             	mov    -0x4(%ebp),%edx
4770db:	8b 45 0c             	mov    0xc(%ebp),%eax
4770de:	ff 55 08             	call   *0x8(%ebp)
4770e1:	80 7d fa 00          	cmpb   $0x0,-0x6(%ebp)
4770e5:	75 05                	jne    0x4770ec
4770e7:	e8 dc ca f8 ff       	call   0x403bc8
4770ec:	80 7d fa 01          	cmpb   $0x1,-0x6(%ebp)
4770f0:	75 05                	jne    0x4770f7
4770f2:	e8 21 53 f9 ff       	call   0x40c418
4770f7:	e8 20 cb f8 ff       	call   0x403c1c
4770fc:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
477100:	74 8a                	je     0x47708c