471d92:	00
471d93:	74 0c                	je     0x471da1
471d95:	8b 86 84 00 00 00    	mov    0x84(%esi),%eax
471d9b:	ff 96 80 00 00 00    	call   *0x80(%esi)
471da1:	f6 46 64 20          	testb  $0x20,0x64(%esi)
471da5:	75 07                	jne    0x471dae
471da7:	8b c6                	mov    %esi,%eax
471da9:	8b 10                	mov    (%eax),%edx
471dab:	ff 52 54             	call   *0x54(%edx)
471dae:	5e                   	pop    %esi
471daf:	c3                   	ret
471db0:	55                   	push   %ebp
471db1:	8b ec                	mov    %esp,%ebp
471db3:	83 c4 e0             	add    $0xffffffe0,%esp
471db6:	53                   	push   %ebx
471db7:	89 4d f4             	mov    %ecx,-0xc(%ebp)
471dba:	89 55 f8             	mov    %edx,-0x8(%ebp)
471dbd:	89 45 fc             	mov    %eax,-0x4(%ebp)
471dc0:	33 c0                	xor    %eax,%eax
471dc2:	89 45 f0             	mov    %eax,-0x10(%ebp)
471dc5:	8b 45 0c             	mov    0xc(%ebp),%eax
471dc8:	83 78 fc 00          	cmpl   $0x0,-0x4(%eax)
471dcc:	0f 84 8b 00 00 00    	je     0x471e5d
471dd2:	8d 4d e0             	lea    -0x20(%ebp),%ecx
471dd5:	33 d2                	xor    %edx,%edx
471dd7:	33 c0                	xor    %eax,%eax
471dd9:	e8 6e 88 fa ff       	call   0x41a64c
471dde:	8d 55 e0             	lea    -0x20(%ebp),%edx
471de1:	8d 4d e8             	lea    -0x18(%ebp),%ecx
471de4:	8b 45 0c             	mov    0xc(%ebp),%eax
471de7:	8b 40 fc             	mov    -0x4(%eax),%eax
471dea:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
471df0:	e8 ef 64 fd ff       	call   0x4482e4
471df5:	8b 45 e8             	mov    -0x18(%ebp),%eax
471df8:	29 45 fc             	sub    %eax,-0x4(%ebp)
471dfb:	8b 45 ec             	mov    -0x14(%ebp),%eax
471dfe:	29 45 f8             	sub    %eax,-0x8(%ebp)
471e01:	8b 45 fc             	mov    -0x4(%ebp),%eax
471e04:	01 45 f4             	add    %eax,-0xc(%ebp)
471e07:	8b 45 f8             	mov    -0x8(%ebp),%eax
471e0a:	01 45 08             	add    %eax,0x8(%ebp)
471e0d:	8b 45 0c             	mov    0xc(%ebp),%eax
471e10:	8b 40 fc             	mov    -0x4(%eax),%eax
471e13:	8b 90 c0 00 00 00    	mov    0xc0(%eax),%edx
471e19:	4a                   	dec    %edx
471e1a:	85 d2                	test   %edx,%edx
471e1c:	7c 3f                	jl     0x471e5d
471e1e:	42                   	inc    %edx
471e1f:	33 c9                	xor    %ecx,%ecx
471e21:	8b 45 0c             	mov    0xc(%ebp),%eax
471e24:	8b 40 fc             	mov    -0x4(%eax),%eax
471e27:	8b 80 c4 00 00 00    	mov    0xc4(%eax),%eax
471e2d:	8b 04 88             	mov    (%eax,%ecx,4),%eax
471e30:	80 78 21 00          	cmpb   $0x0,0x21(%eax)
471e34:	74 23                	je     0x471e59
471e36:	8b 58 04             	mov    0x4(%eax),%ebx
471e39:	3b 5d fc             	cmp    -0x4(%ebp),%ebx
471e3c:	7c 1b                	jl     0x471e59
471e3e:	8b 58 0c             	mov    0xc(%eax),%ebx
471e41:	3b 5d f4             	cmp    -0xc(%ebp),%ebx
471e44:	7f 13                	jg     0x471e59
471e46:	8b 58 08             	mov    0x8(%eax),%ebx
471e49:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
471e4c:	7c 0b                	jl     0x471e59
471e4e:	8b 40 10             	mov    0x10(%eax),%eax
471e51:	3b 45 08             	cmp    0x8(%ebp),%eax
471e54:	7f 03                	jg     0x471e59
471e56:	ff 45 f0             	incl   -0x10(%ebp)
471e59:	41                   	inc    %ecx
471e5a:	4a                   	dec    %edx
471e5b:	75 c4                	jne    0x471e21
471e5d:	8b 45 f0             	mov    -0x10(%ebp),%eax
471e60:	5b                   	pop    %ebx
471e61:	8b e5                	mov    %ebp,%esp
471e63:	5d                   	pop    %ebp
471e64:	c2 04 00             	ret    $0x4
471e67:	90                   	nop
471e68:	55                   	push   %ebp
471e69:	8b ec                	mov    %esp,%ebp
471e6b:	83 c4 f4             	add    $0xfffffff4,%esp
471e6e:	53                   	push   %ebx
471e6f:	56                   	push   %esi
471e70:	57                   	push   %edi
471e71:	89 4d f8             	mov    %ecx,-0x8(%ebp)
471e74:	89 55 fc             	mov    %edx,-0x4(%ebp)
471e77:	8b 5d 08             	mov    0x8(%ebp),%ebx
471e7a:	8b 43 30             	mov    0x30(%ebx),%eax
471e7d:	03 43 38             	add    0x38(%ebx),%eax
471e80:	3b 43 0f             	cmp    0xf(%ebx),%eax
471e83:	7e 2d                	jle    0x471eb2
471e85:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471e89:	74 0c                	je     0x471e97
471e8b:	8b 45 fc             	mov    -0x4(%ebp),%eax
471e8e:	80 b8 a4 00 00 00 01 	cmpb   $0x1,0xa4(%eax)
471e95:	74 1b                	je     0x471eb2
471e97:	80 3b 00             	cmpb   $0x0,(%ebx)
471e9a:	75 05                	jne    0x471ea1
471e9c:	8b 73 17             	mov    0x17(%ebx),%esi
471e9f:	eb 06                	jmp    0x471ea7
471ea1:	8b 73 1f             	mov    0x1f(%ebx),%esi
471ea4:	03 73 28             	add    0x28(%ebx),%esi
471ea7:	2b 73 38             	sub    0x38(%ebx),%esi
471eaa:	3b 73 07             	cmp    0x7(%ebx),%esi
471ead:	7c 03                	jl     0x471eb2
471eaf:	89 73 30             	mov    %esi,0x30(%ebx)
471eb2:	8b 4b 30             	mov    0x30(%ebx),%ecx
471eb5:	8b 53 38             	mov    0x38(%ebx),%edx
471eb8:	03 ca                	add    %edx,%ecx
471eba:	8b 43 0f             	mov    0xf(%ebx),%eax
471ebd:	3b c8                	cmp    %eax,%ecx
471ebf:	7e 05                	jle    0x471ec6
471ec1:	2b c2                	sub    %edx,%eax
471ec3:	89 43 30             	mov    %eax,0x30(%ebx)
471ec6:	8b 43 07             	mov    0x7(%ebx),%eax
471ec9:	3b 43 30             	cmp    0x30(%ebx),%eax
471ecc:	7e 03                	jle    0x471ed1
471ece:	89 43 30             	mov    %eax,0x30(%ebx)
471ed1:	80 3b 00             	cmpb   $0x0,(%ebx)
471ed4:	0f 85 e0 01 00 00    	jne    0x4720ba
471eda:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471ede:	75 14                	jne    0x471ef4
471ee0:	80 7b 01 01          	cmpb   $0x1,0x1(%ebx)
471ee4:	75 0e                	jne    0x471ef4
471ee6:	8b 43 2c             	mov    0x2c(%ebx),%eax
471ee9:	3b 43 03             	cmp    0x3(%ebx),%eax
471eec:	7d 06                	jge    0x471ef4
471eee:	8b 43 34             	mov    0x34(%ebx),%eax
471ef1:	01 43 2c             	add    %eax,0x2c(%ebx)
471ef4:	8b 43 2c             	mov    0x2c(%ebx),%eax
471ef7:	03 43 34             	add    0x34(%ebx),%eax
471efa:	3b 43 0b             	cmp    0xb(%ebx),%eax
471efd:	7e 18                	jle    0x471f17
471eff:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471f03:	75 06                	jne    0x471f0b
471f05:	80 7b 01 00          	cmpb   $0x0,0x1(%ebx)
471f09:	74 06                	je     0x471f11
471f0b:	8b 43 0b             	mov    0xb(%ebx),%eax
471f0e:	89 43 2c             	mov    %eax,0x2c(%ebx)
471f11:	8b 43 34             	mov    0x34(%ebx),%eax
471f14:	29 43 2c             	sub    %eax,0x2c(%ebx)
471f17:	8b 43 03             	mov    0x3(%ebx),%eax
471f1a:	3b 43 2c             	cmp    0x2c(%ebx),%eax
471f1d:	7e 03                	jle    0x471f22
471f1f:	89 43 2c             	mov    %eax,0x2c(%ebx)
471f22:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471f26:	74 10                	je     0x471f38
471f28:	8b 45 fc             	mov    -0x4(%ebp),%eax
471f2b:	80 b8 a4 00 00 00 01 	cmpb   $0x1,0xa4(%eax)
471f32:	0f 84 c4 00 00 00    	je     0x471ffc
471f38:	8b 73 17             	mov    0x17(%ebx),%esi
471f3b:	2b 73 38             	sub    0x38(%ebx),%esi
471f3e:	3b 73 07             	cmp    0x7(%ebx),%esi
471f41:	7c 56                	jl     0x471f99
471f43:	55                   	push   %ebp
471f44:	8b 43 38             	mov    0x38(%ebx),%eax
471f47:	50                   	push   %eax
471f48:	8b 4b 34             	mov    0x34(%ebx),%ecx
471f4b:	8b 43 2c             	mov    0x2c(%ebx),%eax
471f4e:	8b d6                	mov    %esi,%edx
471f50:	e8 5b fe ff ff       	call   0x471db0
471f55:	59                   	pop    %ecx
471f56:	8b f8                	mov    %eax,%edi
471f58:	55                   	push   %ebp
471f59:	8b 43 38             	mov    0x38(%ebx),%eax
471f5c:	50                   	push   %eax
471f5d:	8b 4b 34             	mov    0x34(%ebx),%ecx
471f60:	8b 53 30             	mov    0x30(%ebx),%edx
471f63:	8b 43 2c             	mov    0x2c(%ebx),%eax
471f66:	e8 45 fe ff ff       	call   0x471db0
471f6b:	59                   	pop    %ecx
471f6c:	3b f8                	cmp    %eax,%edi
471f6e:	7c 26                	jl     0x471f96
471f70:	8b 43 30             	mov    0x30(%ebx),%eax
471f73:	3b 43 1f             	cmp    0x1f(%ebx),%eax
471f76:	7d 21                	jge    0x471f99
471f78:	8b 43 30             	mov    0x30(%ebx),%eax
471f7b:	03 43 38             	add    0x38(%ebx),%eax
471f7e:	3b 43 17             	cmp    0x17(%ebx),%eax
471f81:	7e 16                	jle    0x471f99
471f83:	8b 43 2c             	mov    0x2c(%ebx),%eax
471f86:	3b 43 1b             	cmp    0x1b(%ebx),%eax
471f89:	7d 0e                	jge    0x471f99
471f8b:	8b 43 2c             	mov    0x2c(%ebx),%eax
471f8e:	03 43 34             	add    0x34(%ebx),%eax
471f91:	3b 43 13             	cmp    0x13(%ebx),%eax
471f94:	7e 03                	jle    0x471f99
471f96:	89 73 30             	mov    %esi,0x30(%ebx)
471f99:	8b 43 30             	mov    0x30(%ebx),%eax
471f9c:	3b 43 1f             	cmp    0x1f(%ebx),%eax
471f9f:	0f 8d 86 01 00 00    	jge    0x47212b
471fa5:	03 43 38             	add    0x38(%ebx),%eax
471fa8:	3b 43 17             	cmp    0x17(%ebx),%eax
471fab:	0f 8e 7a 01 00 00    	jle    0x47212b
471fb1:	8b 43 2c             	mov    0x2c(%ebx),%eax
471fb4:	3b 43 1b             	cmp    0x1b(%ebx),%eax
471fb7:	0f 8d 6e 01 00 00    	jge    0x47212b
471fbd:	8b 43 2c             	mov    0x2c(%ebx),%eax
471fc0:	03 43 34             	add    0x34(%ebx),%eax
471fc3:	3b 43 13             	cmp    0x13(%ebx),%eax
471fc6:	0f 8e 5f 01 00 00    	jle    0x47212b
471fcc:	8b 43 1b             	mov    0x1b(%ebx),%eax
471fcf:	8b c8                	mov    %eax,%ecx
471fd1:	8b 53 34             	mov    0x34(%ebx),%edx
471fd4:	03 ca                	add    %edx,%ecx
471fd6:	3b 4b 0b             	cmp    0xb(%ebx),%ecx
471fd9:	7f 05                	jg     0x471fe0
471fdb:	89 43 2c             	mov    %eax,0x2c(%ebx)
471fde:	eb 08                	jmp    0x471fe8
471fe0:	8b 43 13             	mov    0x13(%ebx),%eax
471fe3:	2b c2                	sub    %edx,%eax
471fe5:	89 43 2c             	mov    %eax,0x2c(%ebx)
471fe8:	8b 43 07             	mov    0x7(%ebx),%eax
471feb:	3b 43 2c             	cmp    0x2c(%ebx),%eax
471fee:	0f 8e 37 01 00 00    	jle    0x47212b
471ff4:	89 43 2c             	mov    %eax,0x2c(%ebx)
471ff7:	e9 2f 01 00 00       	jmp    0x47212b
471ffc:	8b 73 1b             	mov    0x1b(%ebx),%esi
471fff:	8b 43 34             	mov    0x34(%ebx),%eax
472002:	03 c6                	add    %esi,%eax
472004:	3b 43 0b             	cmp    0xb(%ebx),%eax
472007:	7f 56                	jg     0x47205f
472009:	55                   	push   %ebp
47200a:	8b 43 38             	mov    0x38(%ebx),%eax
47200d:	50                   	push   %eax
47200e:	8b 4b 34             	mov    0x34(%ebx),%ecx
472011:	8b 53 30             	mov    0x30(%ebx),%edx
472014:	8b c6                	mov    %esi,%eax
472016:	e8 95 fd ff ff       	call   0x471db0
47201b:	59                   	pop    %ecx
47201c:	8b f8                	mov    %eax,%edi
47201e:	55                   	push   %ebp
47201f:	8b 43 38             	mov    0x38(%ebx),%eax
472022:	50                   	push   %eax
472023:	8b 4b 34             	mov    0x34(%ebx),%ecx
472026:	8b 53 30             	mov    0x30(%ebx),%edx
472029:	8b 43 2c             	mov    0x2c(%ebx),%eax
47202c:	e8 7f fd ff ff       	call   0x471db0
472031:	59                   	pop    %ecx
472032:	3b f8                	cmp    %eax,%edi
472034:	7c 26                	jl     0x47205c
472036:	8b 43 30             	mov    0x30(%ebx),%eax
472039:	3b 43 1f             	cmp    0x1f(%ebx),%eax
47203c:	7d 21                	jge    0x47205f
47203e:	8b 43 30             	mov    0x30(%ebx),%eax
472041:	03 43 38             	add    0x38(%ebx),%eax
472044:	3b 43 17             	cmp    0x17(%ebx),%eax
472047:	7e 16                	jle    0x47205f
472049:	8b 43 2c             	mov    0x2c(%ebx),%eax
47204c:	3b 43 1b             	cmp    0x1b(%ebx),%eax
47204f:	7d 0e                	jge    0x47205f
472051:	8b 43 2c             	mov    0x2c(%ebx),%eax
472054:	03 43 34             	add    0x34(%ebx),%eax
472057:	3b 43 13             	cmp    0x13(%ebx),%eax
47205a:	7e 03                	jle    0x47205f
47205c:	89 73 2c             	mov    %esi,0x2c(%ebx)
47205f:	8b 53 1f             	mov    0x1f(%ebx),%edx
472062:	8b 43 30             	mov    0x30(%ebx),%eax
472065:	3b d0                	cmp    %eax,%edx
472067:	0f 8e be 00 00 00    	jle    0x47212b
47206d:	03 43 38             	add    0x38(%ebx),%eax
472070:	3b 43 17             	cmp    0x17(%ebx),%eax
472073:	0f 8e b2 00 00 00    	jle    0x47212b
472079:	8b 43 2c             	mov    0x2c(%ebx),%eax
47207c:	3b 43 1b             	cmp    0x1b(%ebx),%eax
47207f:	0f 8d a6 00 00 00    	jge    0x47212b
472085:	8b 43 2c             	mov    0x2c(%ebx),%eax
472088:	03 43 34             	add    0x34(%ebx),%eax
47208b:	3b 43 13             	cmp    0x13(%ebx),%eax
47208e:	0f 8e 97 00 00 00    	jle    0x47212b
472094:	8b ca                	mov    %edx,%ecx
472096:	8b 43 38             	mov    0x38(%ebx),%eax
472099:	03 c8                	add    %eax,%ecx
47209b:	3b 4b 0f             	cmp    0xf(%ebx),%ecx
47209e:	7f 05                	jg     0x4720a5
4720a0:	89 53 30             	mov    %edx,0x30(%ebx)
4720a3:	eb 08                	jmp    0x4720ad
4720a5:	8b 53 17             	mov    0x17(%ebx),%edx
4720a8:	2b d0                	sub    %eax,%edx
4720aa:	89 53 30             	mov    %edx,0x30(%ebx)
4720ad:	8b 43 07             	mov    0x7(%ebx),%eax
4720b0:	3b 43 30             	cmp    0x30(%ebx),%eax
4720b3:	7e 76                	jle    0x47212b
4720b5:	89 43 30             	mov    %eax,0x30(%ebx)
4720b8:	eb 71                	jmp    0x47212b
4720ba:	c6 45 f7 00          	movb   $0x0,-0x9(%ebp)
4720be:	8b 73 2c             	mov    0x2c(%ebx),%esi
4720c1:	8a 43 02             	mov    0x2(%ebx),%al
4720c4:	84 c0                	test   %al,%al
4720c6:	75 0a                	jne    0x4720d2
4720c8:	8b 53 34             	mov    0x34(%ebx),%edx
4720cb:	03 d6                	add    %esi,%edx
4720cd:	3b 53 0b             	cmp    0xb(%ebx),%edx
4720d0:	7e 44                	jle    0x472116
4720d2:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4720d6:	74 06                	je     0x4720de
4720d8:	8b 73 13             	mov    0x13(%ebx),%esi
4720db:	03 73 24             	add    0x24(%ebx),%esi
4720de:	2b 73 34             	sub    0x34(%ebx),%esi
4720e1:	84 c0                	test   %al,%al
4720e3:	75 12                	jne    0x4720f7
4720e5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4720e8:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
4720ee:	80 88 b3 00 00 00 08 	orb    $0x8,0xb3(%eax)
4720f5:	eb 1f                	jmp    0x472116
4720f7:	3b 73 03             	cmp    0x3(%ebx),%esi
4720fa:	7d 0a                	jge    0x472106
4720fc:	c6 43 02 00          	movb   $0x0,0x2(%ebx)
472100:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
472104:	eb 10                	jmp    0x472116
472106:	8b 45 f8             	mov    -0x8(%ebp),%eax
472109:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
47210f:	80 88 b3 00 00 00 08 	orb    $0x8,0xb3(%eax)
472116:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
47211a:	75 9e                	jne    0x4720ba
47211c:	8b c6                	mov    %esi,%eax
47211e:	89 43 2c             	mov    %eax,0x2c(%ebx)
472121:	8b 53 03             	mov    0x3(%ebx),%edx
472124:	3b c2                	cmp    %edx,%eax
472126:	7d 03                	jge    0x47212b
472128:	89 53 2c             	mov    %edx,0x2c(%ebx)
47212b:	a0 a8 21 47 00       	mov    0x4721a8,%al
472130:	88 43 3c             	mov    %al,0x3c(%ebx)
472133:	80 3b 00             	cmpb   $0x0,(%ebx)
472136:	75 36                	jne    0x47216e
472138:	8b 43 30             	mov    0x30(%ebx),%eax
47213b:	3b 43 1f             	cmp    0x1f(%ebx),%eax
47213e:	7c 06                	jl     0x472146
472140:	80 4b 3c 04          	orb    $0x4,0x3c(%ebx)
472144:	eb 0c                	jmp    0x472152
472146:	03 43 38             	add    0x38(%ebx),%eax
472149:	3b 43 17             	cmp    0x17(%ebx),%eax
47214c:	7f 04                	jg     0x472152
47214e:	80 4b 3c 08          	orb    $0x8,0x3c(%ebx)
472152:	8b 43 2c             	mov    0x2c(%ebx),%eax
472155:	3b 43 1b             	cmp    0x1b(%ebx),%eax
472158:	7c 06                	jl     0x472160
47215a:	80 4b 3c 02          	orb    $0x2,0x3c(%ebx)
47215e:	eb 3c                	jmp    0x47219c
472160:	03 43 34             	add    0x34(%ebx),%eax
472163:	3b 43 13             	cmp    0x13(%ebx),%eax
472166:	7f 34                	jg     0x47219c
472168:	80 4b 3c 01          	orb    $0x1,0x3c(%ebx)
47216c:	eb 2e                	jmp    0x47219c
47216e:	8b 53 2c             	mov    0x2c(%ebx),%edx
472171:	8b 4b 34             	mov    0x34(%ebx),%ecx
472174:	d1 f9                	sar    $1,%ecx
472176:	79 03                	jns    0x47217b
472178:	83 d1 00             	adc    $0x0,%ecx
47217b:	03 d1                	add    %ecx,%edx
47217d:	8b 4b 1b             	mov    0x1b(%ebx),%ecx