472d95:	54                   	push   %esp
472d96:	53                   	push   %ebx
472d97:	63 65 6e             	arpl   %esp,0x6e(%ebp)
472d9a:	65 33 44 8d 40       	xor    %gs:0x40(%ebp,%ecx,4),%eax
472d9f:	00 a4 2d 47 00 07 08 	add    %ah,0x8070047(%ebp,%ebp,1)
472da6:	54                   	push   %esp
472da7:	53                   	push   %ebx
472da8:	63 65 6e             	arpl   %esp,0x6e(%ebp)
472dab:	65 33 44 4c 2d       	xor    %gs:0x2d(%esp,%ecx,2),%eax
472db0:	47                   	inc    %edi
472db1:	00 e4                	add    %ah,%ah
472db3:	1f                   	pop    %ds
472db4:	47                   	inc    %edi
472db5:	00 00                	add    %al,(%eax)
472db7:	00 0a                	add    %cl,(%edx)
472db9:	54                   	push   %esp
472dba:	5f                   	pop    %edi
472dbb:	5f                   	pop    %edi
472dbc:	53                   	push   %ebx
472dbd:	63 65 6e             	arpl   %esp,0x6e(%ebp)
472dc0:	65 33 44 00 00       	xor    %gs:0x0(%eax,%eax,1),%eax
472dc5:	8d 40 00             	lea    0x0(%eax),%eax
472dc8:	53                   	push   %ebx
472dc9:	56                   	push   %esi
472dca:	57                   	push   %edi
472dcb:	8b f2                	mov    %edx,%esi
472dcd:	8b d8                	mov    %eax,%ebx
472dcf:	90                   	nop
472dd0:	90                   	nop
472dd1:	90                   	nop
472dd2:	90                   	nop
472dd3:	8b c6                	mov    %esi,%eax
472dd5:	8b 15 0c 20 47 00    	mov    0x47200c,%edx
472ddb:	e8 ec 0c f9 ff       	call   0x403acc
472de0:	8b f8                	mov    %eax,%edi
472de2:	8b 47 30             	mov    0x30(%edi),%eax
472de5:	89 43 30             	mov    %eax,0x30(%ebx)
472de8:	8b 47 34             	mov    0x34(%edi),%eax
472deb:	89 43 34             	mov    %eax,0x34(%ebx)
472dee:	66 8b 47 38          	mov    0x38(%edi),%ax
472df2:	66 89 43 38          	mov    %ax,0x38(%ebx)
472df6:	8b c6                	mov    %esi,%eax
472df8:	8b 15 0c 20 47 00    	mov    0x47200c,%edx
472dfe:	e8 c9 0c f9 ff       	call   0x403acc
472e03:	8b 47 3a             	mov    0x3a(%edi),%eax
472e06:	89 43 3a             	mov    %eax,0x3a(%ebx)
472e09:	8b 47 3e             	mov    0x3e(%edi),%eax
472e0c:	89 43 3e             	mov    %eax,0x3e(%ebx)
472e0f:	66 8b 47 42          	mov    0x42(%edi),%ax
472e13:	66 89 43 42          	mov    %ax,0x42(%ebx)
472e17:	8b c6                	mov    %esi,%eax
472e19:	8b 15 0c 20 47 00    	mov    0x47200c,%edx
472e1f:	e8 a8 0c f9 ff       	call   0x403acc
472e24:	8b 47 44             	mov    0x44(%edi),%eax
472e27:	89 43 44             	mov    %eax,0x44(%ebx)
472e2a:	8b 47 48             	mov    0x48(%edi),%eax
472e2d:	89 43 48             	mov    %eax,0x48(%ebx)
472e30:	66 8b 47 4c          	mov    0x4c(%edi),%ax
472e34:	66 89 43 4c          	mov    %ax,0x4c(%ebx)
472e38:	5f                   	pop    %edi
472e39:	5e                   	pop    %esi
472e3a:	5b                   	pop    %ebx
472e3b:	c3                   	ret
472e3c:	53                   	push   %ebx
472e3d:	56                   	push   %esi
472e3e:	84 d2                	test   %dl,%dl
472e40:	74 08                	je     0x472e4a
472e42:	83 c4 f0             	add    $0xfffffff0,%esp
472e45:	e8 f6 0d f9 ff       	call   0x403c40
472e4a:	8b da                	mov    %edx,%ebx
472e4c:	8b f0                	mov    %eax,%esi
472e4e:	90                   	nop
472e4f:	90                   	nop
472e50:	90                   	nop
472e51:	90                   	nop
472e52:	90                   	nop
472e53:	90                   	nop
472e54:	90                   	nop
472e55:	90                   	nop
472e56:	90                   	nop
472e57:	33 d2                	xor    %edx,%edx
472e59:	8b c6                	mov    %esi,%eax
472e5b:	e8 d8 5c fa ff       	call   0x418b38
472e60:	33 c0                	xor    %eax,%eax
472e62:	89 46 30             	mov    %eax,0x30(%esi)
472e65:	89 46 34             	mov    %eax,0x34(%esi)
472e68:	66 89 46 38          	mov    %ax,0x38(%esi)
472e6c:	33 c0                	xor    %eax,%eax
472e6e:	89 46 3a             	mov    %eax,0x3a(%esi)
472e71:	89 46 3e             	mov    %eax,0x3e(%esi)
472e74:	66 89 46 42          	mov    %ax,0x42(%esi)
472e78:	33 c0                	xor    %eax,%eax
472e7a:	89 46 44             	mov    %eax,0x44(%esi)
472e7d:	89 46 48             	mov    %eax,0x48(%esi)
472e80:	66 89 46 4c          	mov    %ax,0x4c(%esi)
472e84:	8b c6                	mov    %esi,%eax
472e86:	84 db                	test   %bl,%bl
472e88:	74 0f                	je     0x472e99
472e8a:	e8 09 0e f9 ff       	call   0x403c98
472e8f:	64 8f 05 00 00 00 00 	pop    %fs:0x0
472e96:	83 c4 0c             	add    $0xc,%esp
472e99:	8b c6                	mov    %esi,%eax
472e9b:	5e                   	pop    %esi
472e9c:	5b                   	pop    %ebx
472e9d:	c3                   	ret
472e9e:	8b c0                	mov    %eax,%eax
472ea0:	53                   	push   %ebx
472ea1:	83 c4 f8             	add    $0xfffffff8,%esp
472ea4:	8b d8                	mov    %eax,%ebx
472ea6:	90                   	nop
472ea7:	90                   	nop
472ea8:	90                   	nop
472ea9:	90                   	nop
472eaa:	8b c3                	mov    %ebx,%eax
472eac:	e8 17 37 00 00       	call   0x4765c8
472eb1:	80 7b 24 00          	cmpb   $0x0,0x24(%ebx)
472eb5:	75 4e                	jne    0x472f05
472eb7:	90                   	nop
472eb8:	90                   	nop
472eb9:	90                   	nop
472eba:	90                   	nop
472ebb:	90                   	nop
472ebc:	90                   	nop
472ebd:	0f b7 43 38          	movzwl 0x38(%ebx),%eax
472ec1:	50                   	push   %eax
472ec2:	ff 73 34             	push   0x34(%ebx)
472ec5:	ff 73 30             	push   0x30(%ebx)
472ec8:	0f b7 43 42          	movzwl 0x42(%ebx),%eax
472ecc:	50                   	push   %eax
472ecd:	ff 73 3e             	push   0x3e(%ebx)
472ed0:	ff 73 3a             	push   0x3a(%ebx)
472ed3:	0f b7 43 4c          	movzwl 0x4c(%ebx),%eax
472ed7:	50                   	push   %eax
472ed8:	ff 73 48             	push   0x48(%ebx)
472edb:	ff 73 44             	push   0x44(%ebx)
472ede:	8d 4c 24 28          	lea    0x28(%esp),%ecx
472ee2:	8d 54 24 24          	lea    0x24(%esp),%edx
472ee6:	8b 43 0c             	mov    0xc(%ebx),%eax
472ee9:	e8 c6 5b 00 00       	call   0x478ab4
472eee:	8b 43 10             	mov    0x10(%ebx),%eax
472ef1:	50                   	push   %eax
472ef2:	8b 43 0c             	mov    0xc(%ebx),%eax
472ef5:	8b 40 04             	mov    0x4(%eax),%eax
472ef8:	8b 4c 24 08          	mov    0x8(%esp),%ecx
472efc:	8b 54 24 04          	mov    0x4(%esp),%edx
472f00:	e8 bf 21 fb ff       	call   0x4250c4
472f05:	8b 43 0c             	mov    0xc(%ebx),%eax
472f08:	8b 40 04             	mov    0x4(%eax),%eax
472f0b:	8b 40 10             	mov    0x10(%eax),%eax
472f0e:	8b 53 18             	mov    0x18(%ebx),%edx
472f11:	e8 fa 16 fb ff       	call   0x424610
472f16:	8b 43 0c             	mov    0xc(%ebx),%eax
472f19:	8b 40 04             	mov    0x4(%eax),%eax
472f1c:	8b 40 10             	mov    0x10(%eax),%eax
472f1f:	0f b6 53 1c          	movzbl 0x1c(%ebx),%edx
472f23:	e8 c4 17 fb ff       	call   0x4246ec
472f28:	59                   	pop    %ecx
472f29:	5a                   	pop    %edx
472f2a:	5b                   	pop    %ebx
472f2b:	c3                   	ret
472f2c:	55                   	push   %ebp
472f2d:	8b ec                	mov    %esp,%ebp
472f2f:	51                   	push   %ecx
472f30:	b9 09 00 00 00       	mov    $0x9,%ecx
472f35:	6a 00                	push   $0x0
472f37:	6a 00                	push   $0x0
472f39:	49                   	dec    %ecx
472f3a:	75 f9                	jne    0x472f35
472f3c:	87 4d fc             	xchg   %ecx,-0x4(%ebp)
472f3f:	53                   	push   %ebx
472f40:	89 4d f8             	mov    %ecx,-0x8(%ebp)
472f43:	89 55 fc             	mov    %edx,-0x4(%ebp)
472f46:	8b d8                	mov    %eax,%ebx
472f48:	8b 45 fc             	mov    -0x4(%ebp),%eax
472f4b:	e8 9c 32 f9 ff       	call   0x4061ec
472f50:	8b 45 f8             	mov    -0x8(%ebp),%eax
472f53:	e8 94 32 f9 ff       	call   0x4061ec
472f58:	33 c0                	xor    %eax,%eax
472f5a:	55                   	push   %ebp
472f5b:	68 08 32 47 00       	push   $0x473208
472f60:	64 ff 30             	push   %fs:(%eax)
472f63:	64 89 20             	mov    %esp,%fs:(%eax)
472f66:	90                   	nop
472f67:	90                   	nop
472f68:	90                   	nop
472f69:	90                   	nop
472f6a:	90                   	nop
472f6b:	90                   	nop
472f6c:	90                   	nop
472f6d:	90                   	nop
472f6e:	90                   	nop
472f6f:	90                   	nop
472f70:	90                   	nop
472f71:	90                   	nop
472f72:	90                   	nop
472f73:	8d 45 f4             	lea    -0xc(%ebp),%eax
472f76:	e8 fd 31 f9 ff       	call   0x406178
472f7b:	50                   	push   %eax
472f7c:	68 1c 32 47 00       	push   $0x47321c
472f81:	8b 45 fc             	mov    -0x4(%ebp),%eax
472f84:	50                   	push   %eax
472f85:	8b 00                	mov    (%eax),%eax
472f87:	ff 90 bc 00 00 00    	call   *0xbc(%eax)
472f8d:	e8 f6 32 f9 ff       	call   0x406288
472f92:	8d 45 ec             	lea    -0x14(%ebp),%eax
472f95:	e8 de 31 f9 ff       	call   0x406178
472f9a:	50                   	push   %eax
472f9b:	8b 45 f4             	mov    -0xc(%ebp),%eax
472f9e:	50                   	push   %eax
472f9f:	8b 45 f8             	mov    -0x8(%ebp),%eax
472fa2:	50                   	push   %eax
472fa3:	8b 00                	mov    (%eax),%eax
472fa5:	ff 50 54             	call   *0x54(%eax)
472fa8:	e8 db 32 f9 ff       	call   0x406288
472fad:	8d 45 e8             	lea    -0x18(%ebp),%eax
472fb0:	e8 c3 31 f9 ff       	call   0x406178
472fb5:	50                   	push   %eax
472fb6:	8d 45 e4             	lea    -0x1c(%ebp),%eax
472fb9:	e8 ba 31 f9 ff       	call   0x406178
472fbe:	50                   	push   %eax
472fbf:	68 30 32 47 00       	push   $0x473230
472fc4:	8b 45 fc             	mov    -0x4(%ebp),%eax
472fc7:	50                   	push   %eax
472fc8:	8b 00                	mov    (%eax),%eax
472fca:	ff 90 c4 00 00 00    	call   *0xc4(%eax)
472fd0:	e8 b3 32 f9 ff       	call   0x406288
472fd5:	8b 45 e4             	mov    -0x1c(%ebp),%eax
472fd8:	50                   	push   %eax
472fd9:	8b 45 f4             	mov    -0xc(%ebp),%eax
472fdc:	50                   	push   %eax
472fdd:	8b 00                	mov    (%eax),%eax
472fdf:	ff 50 54             	call   *0x54(%eax)
472fe2:	e8 a1 32 f9 ff       	call   0x406288
472fe7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
472fea:	8b 55 fc             	mov    -0x4(%ebp),%edx
472fed:	8b c3                	mov    %ebx,%eax
472fef:	e8 64 36 00 00       	call   0x476658
472ff4:	8d 45 f0             	lea    -0x10(%ebp),%eax
472ff7:	e8 7c 31 f9 ff       	call   0x406178
472ffc:	50                   	push   %eax
472ffd:	68 3c 32 47 00       	push   $0x47323c
473002:	8b 45 fc             	mov    -0x4(%ebp),%eax
473005:	50                   	push   %eax
473006:	8b 00                	mov    (%eax),%eax
473008:	ff 90 d4 00 00 00    	call   *0xd4(%eax)
47300e:	e8 75 32 f9 ff       	call   0x406288
473013:	0f b7 43 38          	movzwl 0x38(%ebx),%eax
473017:	50                   	push   %eax
473018:	ff 73 34             	push   0x34(%ebx)
47301b:	ff 73 30             	push   0x30(%ebx)
47301e:	8d 45 dc             	lea    -0x24(%ebp),%eax
473021:	e8 86 71 f9 ff       	call   0x40a1ac
473026:	8b 55 dc             	mov    -0x24(%ebp),%edx
473029:	8d 45 e0             	lea    -0x20(%ebp),%eax
47302c:	e8 73 20 f9 ff       	call   0x4050a4
473031:	8b 45 e0             	mov    -0x20(%ebp),%eax
473034:	50                   	push   %eax
473035:	8b 45 f0             	mov    -0x10(%ebp),%eax
473038:	50                   	push   %eax
473039:	8b 00                	mov    (%eax),%eax
47303b:	ff 50 6c             	call   *0x6c(%eax)
47303e:	e8 45 32 f9 ff       	call   0x406288
473043:	8d 45 d8             	lea    -0x28(%ebp),%eax
473046:	e8 2d 31 f9 ff       	call   0x406178
47304b:	50                   	push   %eax
47304c:	8b 45 f0             	mov    -0x10(%ebp),%eax
47304f:	50                   	push   %eax
473050:	8d 45 d4             	lea    -0x2c(%ebp),%eax
473053:	e8 20 31 f9 ff       	call   0x406178
473058:	50                   	push   %eax
473059:	8b 45 f4             	mov    -0xc(%ebp),%eax
47305c:	50                   	push   %eax
47305d:	8b 00                	mov    (%eax),%eax
47305f:	ff 50 44             	call   *0x44(%eax)
473062:	e8 21 32 f9 ff       	call   0x406288
473067:	8b 45 d4             	mov    -0x2c(%ebp),%eax
47306a:	50                   	push   %eax
47306b:	8b 00                	mov    (%eax),%eax
47306d:	ff 50 20             	call   *0x20(%eax)
473070:	e8 13 32 f9 ff       	call   0x406288
473075:	8d 45 f0             	lea    -0x10(%ebp),%eax
473078:	e8 fb 30 f9 ff       	call   0x406178
47307d:	50                   	push   %eax
47307e:	68 44 32 47 00       	push   $0x473244
473083:	8b 45 fc             	mov    -0x4(%ebp),%eax
473086:	50                   	push   %eax
473087:	8b 00                	mov    (%eax),%eax
473089:	ff 90 d4 00 00 00    	call   *0xd4(%eax)
47308f:	e8 f4 31 f9 ff       	call   0x406288
473094:	0f b7 43 42          	movzwl 0x42(%ebx),%eax
473098:	50                   	push   %eax
473099:	ff 73 3e             	push   0x3e(%ebx)
47309c:	ff 73 3a             	push   0x3a(%ebx)
47309f:	8d 45 cc             	lea    -0x34(%ebp),%eax
4730a2:	e8 05 71 f9 ff       	call   0x40a1ac
4730a7:	8b 55 cc             	mov    -0x34(%ebp),%edx
4730aa:	8d 45 d0             	lea    -0x30(%ebp),%eax
4730ad:	e8 f2 1f f9 ff       	call   0x4050a4
4730b2:	8b 45 d0             	mov    -0x30(%ebp),%eax
4730b5:	50                   	push   %eax
4730b6:	8b 45 f0             	mov    -0x10(%ebp),%eax
4730b9:	50                   	push   %eax
4730ba:	8b 00                	mov    (%eax),%eax
4730bc:	ff 50 6c             	call   *0x6c(%eax)
4730bf:	e8 c4 31 f9 ff       	call   0x406288
4730c4:	8d 45 c8             	lea    -0x38(%ebp),%eax
4730c7:	e8 ac 30 f9 ff       	call   0x406178
4730cc:	50                   	push   %eax
4730cd:	8b 45 f0             	mov    -0x10(%ebp),%eax
4730d0:	50                   	push   %eax
4730d1:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4730d4:	e8 9f 30 f9 ff       	call   0x406178
4730d9:	50                   	push   %eax
4730da:	8b 45 f4             	mov    -0xc(%ebp),%eax
4730dd:	50                   	push   %eax
4730de:	8b 00                	mov    (%eax),%eax
4730e0:	ff 50 44             	call   *0x44(%eax)
4730e3:	e8 a0 31 f9 ff       	call   0x406288
4730e8:	8b 45 c4             	mov    -0x3c(%ebp),%eax
4730eb:	50                   	push   %eax
4730ec:	8b 00                	mov    (%eax),%eax
4730ee:	ff 50 20             	call   *0x20(%eax)
4730f1:	e8 92 31 f9 ff       	call   0x406288
4730f6:	8d 45 f0             	lea    -0x10(%ebp),%eax
4730f9:	e8 7a 30 f9 ff       	call   0x406178
4730fe:	50                   	push   %eax
4730ff:	68 4c 32 47 00       	push   $0x47324c
473104:	8b 45 fc             	mov    -0x4(%ebp),%eax
473107:	50                   	push   %eax
473108:	8b 00                	mov    (%eax),%eax
47310a:	ff 90 d4 00 00 00    	call   *0xd4(%eax)
473110:	e8 73 31 f9 ff       	call   0x406288
473115:	0f b7 43 4c          	movzwl 0x4c(%ebx),%eax
473119:	50                   	push   %eax
47311a:	ff 73 48             	push   0x48(%ebx)
47311d:	ff 73 44             	push   0x44(%ebx)
473120:	8d 45 bc             	lea    -0x44(%ebp),%eax
473123:	e8 84 70 f9 ff       	call   0x40a1ac
473128:	8b 55 bc             	mov    -0x44(%ebp),%edx
47312b:	8d 45 c0             	lea    -0x40(%ebp),%eax
47312e:	e8 71 1f f9 ff       	call   0x4050a4
473133:	8b 45 c0             	mov    -0x40(%ebp),%eax
473136:	50                   	push   %eax
473137:	8b 45 f0             	mov    -0x10(%ebp),%eax
47313a:	50                   	push   %eax
47313b:	8b 00                	mov    (%eax),%eax
47313d:	ff 50 6c             	call   *0x6c(%eax)
473140:	e8 43 31 f9 ff       	call   0x406288
473145:	8d 45 b8             	lea    -0x48(%ebp),%eax
473148:	e8 2b 30 f9 ff       	call   0x406178