41ded2:	8b d8                	mov    %eax,%ebx
41ded4:	8b d0                	mov    %eax,%edx
41ded6:	8b 43 24             	mov    0x24(%ebx),%eax
41ded9:	ff 53 20             	call   *0x20(%ebx)
41dedc:	5b                   	pop    %ebx
41dedd:	c3                   	ret
41dede:	8b c0                	mov    %eax,%eax
41dee0:	53                   	push   %ebx
41dee1:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
41dee5:	75 11                	jne    0x41def8
41dee7:	66 83 78 2a 00       	cmpw   $0x0,0x2a(%eax)
41deec:	74 0a                	je     0x41def8
41deee:	8b d8                	mov    %eax,%ebx
41def0:	8b d0                	mov    %eax,%edx
41def2:	8b 43 2c             	mov    0x2c(%ebx),%eax
41def5:	ff 53 28             	call   *0x28(%ebx)
41def8:	5b                   	pop    %ebx
41def9:	c3                   	ret
41defa:	8b c0                	mov    %eax,%eax
41defc:	53                   	push   %ebx
41defd:	8b d8                	mov    %eax,%ebx
41deff:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
41df03:	74 33                	je     0x41df38
41df05:	8b c3                	mov    %ebx,%eax
41df07:	8b 10                	mov    (%eax),%edx
41df09:	ff 92 84 00 00 00    	call   *0x84(%edx)
41df0f:	8b 43 10             	mov    0x10(%ebx),%eax
41df12:	8b 4b 14             	mov    0x14(%ebx),%ecx
41df15:	8b 15 fc 9b 41 00    	mov    0x419bfc,%edx
41df1b:	e8 f8 6c fe ff       	call   0x404c18
41df20:	33 c0                	xor    %eax,%eax
41df22:	89 43 14             	mov    %eax,0x14(%ebx)
41df25:	33 d2                	xor    %edx,%edx
41df27:	8b c3                	mov    %ebx,%eax
41df29:	8b 08                	mov    (%eax),%ecx
41df2b:	ff 51 28             	call   *0x28(%ecx)
41df2e:	8b c3                	mov    %ebx,%eax
41df30:	8b 10                	mov    (%eax),%edx
41df32:	ff 92 80 00 00 00    	call   *0x80(%edx)
41df38:	5b                   	pop    %ebx
41df39:	c3                   	ret
41df3a:	8b c0                	mov    %eax,%eax
41df3c:	53                   	push   %ebx
41df3d:	56                   	push   %esi
41df3e:	8b f2                	mov    %edx,%esi
41df40:	8b d8                	mov    %eax,%ebx
41df42:	85 f6                	test   %esi,%esi
41df44:	7c 05                	jl     0x41df4b
41df46:	3b 73 14             	cmp    0x14(%ebx),%esi
41df49:	7c 0f                	jl     0x41df5a
41df4b:	8b 15 c0 b3 49 00    	mov    0x49b3c0,%edx
41df51:	8b ce                	mov    %esi,%ecx
41df53:	8b c3                	mov    %ebx,%eax
41df55:	e8 a2 f2 ff ff       	call   0x41d1fc
41df5a:	8b c3                	mov    %ebx,%eax
41df5c:	8b 10                	mov    (%eax),%edx
41df5e:	ff 92 84 00 00 00    	call   *0x84(%edx)
41df64:	8b 43 10             	mov    0x10(%ebx),%eax
41df67:	8d 04 f0             	lea    (%eax,%esi,8),%eax
41df6a:	8b 15 fc 9b 41 00    	mov    0x419bfc,%edx
41df70:	e8 8f 6d fe ff       	call   0x404d04
41df75:	ff 4b 14             	decl   0x14(%ebx)
41df78:	8b 43 14             	mov    0x14(%ebx),%eax
41df7b:	3b f0                	cmp    %eax,%esi
41df7d:	7d 19                	jge    0x41df98
41df7f:	2b c6                	sub    %esi,%eax
41df81:	8b c8                	mov    %eax,%ecx
41df83:	c1 e1 03             	shl    $0x3,%ecx
41df86:	8b 43 10             	mov    0x10(%ebx),%eax
41df89:	8d 14 f0             	lea    (%eax,%esi,8),%edx
41df8c:	8b 43 10             	mov    0x10(%ebx),%eax
41df8f:	8d 44 f0 08          	lea    0x8(%eax,%esi,8),%eax
41df93:	e8 dc 49 fe ff       	call   0x402974
41df98:	8b c3                	mov    %ebx,%eax
41df9a:	8b 10                	mov    (%eax),%edx
41df9c:	ff 92 80 00 00 00    	call   *0x80(%edx)
41dfa2:	5e                   	pop    %esi
41dfa3:	5b                   	pop    %ebx
41dfa4:	c3                   	ret
41dfa5:	8d 40 00             	lea    0x0(%eax),%eax
41dfa8:	53                   	push   %ebx
41dfa9:	56                   	push   %esi
41dfaa:	57                   	push   %edi
41dfab:	8b f9                	mov    %ecx,%edi
41dfad:	8b f2                	mov    %edx,%esi
41dfaf:	8b d8                	mov    %eax,%ebx
41dfb1:	85 f6                	test   %esi,%esi
41dfb3:	7c 05                	jl     0x41dfba
41dfb5:	3b 73 14             	cmp    0x14(%ebx),%esi
41dfb8:	7c 0f                	jl     0x41dfc9
41dfba:	8b 15 c0 b3 49 00    	mov    0x49b3c0,%edx
41dfc0:	8b ce                	mov    %esi,%ecx
41dfc2:	8b c3                	mov    %ebx,%eax
41dfc4:	e8 33 f2 ff ff       	call   0x41d1fc
41dfc9:	85 ff                	test   %edi,%edi
41dfcb:	7c 05                	jl     0x41dfd2
41dfcd:	3b 7b 14             	cmp    0x14(%ebx),%edi
41dfd0:	7c 0f                	jl     0x41dfe1
41dfd2:	8b 15 c0 b3 49 00    	mov    0x49b3c0,%edx
41dfd8:	8b cf                	mov    %edi,%ecx
41dfda:	8b c3                	mov    %ebx,%eax
41dfdc:	e8 1b f2 ff ff       	call   0x41d1fc
41dfe1:	8b c3                	mov    %ebx,%eax
41dfe3:	8b 10                	mov    (%eax),%edx
41dfe5:	ff 92 84 00 00 00    	call   *0x84(%edx)
41dfeb:	8b cf                	mov    %edi,%ecx
41dfed:	8b d6                	mov    %esi,%edx
41dfef:	8b c3                	mov    %ebx,%eax
41dff1:	e8 0e 00 00 00       	call   0x41e004
41dff6:	8b c3                	mov    %ebx,%eax
41dff8:	8b 10                	mov    (%eax),%edx
41dffa:	ff 92 80 00 00 00    	call   *0x80(%edx)
41e000:	5f                   	pop    %edi
41e001:	5e                   	pop    %esi
41e002:	5b                   	pop    %ebx
41e003:	c3                   	ret
41e004:	53                   	push   %ebx
41e005:	8b 58 10             	mov    0x10(%eax),%ebx
41e008:	8d 14 d3             	lea    (%ebx,%edx,8),%edx
41e00b:	8b 40 10             	mov    0x10(%eax),%eax
41e00e:	8d 04 c8             	lea    (%eax,%ecx,8),%eax
41e011:	8b 0a                	mov    (%edx),%ecx
41e013:	8b 18                	mov    (%eax),%ebx
41e015:	89 1a                	mov    %ebx,(%edx)
41e017:	89 08                	mov    %ecx,(%eax)
41e019:	8b 4a 04             	mov    0x4(%edx),%ecx
41e01c:	8b 58 04             	mov    0x4(%eax),%ebx
41e01f:	89 5a 04             	mov    %ebx,0x4(%edx)
41e022:	89 48 04             	mov    %ecx,0x4(%eax)
41e025:	5b                   	pop    %ebx
41e026:	c3                   	ret
41e027:	90                   	nop
41e028:	53                   	push   %ebx
41e029:	56                   	push   %esi
41e02a:	57                   	push   %edi
41e02b:	55                   	push   %ebp
41e02c:	83 c4 f0             	add    $0xfffffff0,%esp
41e02f:	89 4c 24 04          	mov    %ecx,0x4(%esp)
41e033:	89 14 24             	mov    %edx,(%esp)
41e036:	8b f8                	mov    %eax,%edi
41e038:	c6 44 24 08 00       	movb   $0x0,0x8(%esp)
41e03d:	33 f6                	xor    %esi,%esi
41e03f:	8b 47 14             	mov    0x14(%edi),%eax
41e042:	48                   	dec    %eax
41e043:	89 44 24 0c          	mov    %eax,0xc(%esp)
41e047:	3b 74 24 0c          	cmp    0xc(%esp),%esi
41e04b:	7f 3f                	jg     0x41e08c
41e04d:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
41e051:	03 de                	add    %esi,%ebx
41e053:	d1 eb                	shr    $1,%ebx
41e055:	8b 47 10             	mov    0x10(%edi),%eax
41e058:	8b 14 d8             	mov    (%eax,%ebx,8),%edx
41e05b:	8b 0c 24             	mov    (%esp),%ecx
41e05e:	8b c7                	mov    %edi,%eax
41e060:	8b 28                	mov    (%eax),%ebp
41e062:	ff 55 34             	call   *0x34(%ebp)
41e065:	85 c0                	test   %eax,%eax
41e067:	7d 05                	jge    0x41e06e
41e069:	8d 73 01             	lea    0x1(%ebx),%esi
41e06c:	eb 18                	jmp    0x41e086
41e06e:	8b d3                	mov    %ebx,%edx
41e070:	4a                   	dec    %edx
41e071:	89 54 24 0c          	mov    %edx,0xc(%esp)
41e075:	85 c0                	test   %eax,%eax
41e077:	75 0d                	jne    0x41e086
41e079:	c6 44 24 08 01       	movb   $0x1,0x8(%esp)
41e07e:	80 7f 1d 01          	cmpb   $0x1,0x1d(%edi)
41e082:	74 02                	je     0x41e086
41e084:	8b f3                	mov    %ebx,%esi
41e086:	3b 74 24 0c          	cmp    0xc(%esp),%esi
41e08a:	7e c1                	jle    0x41e04d
41e08c:	8b 44 24 04          	mov    0x4(%esp),%eax
41e090:	89 30                	mov    %esi,(%eax)
41e092:	8a 44 24 08          	mov    0x8(%esp),%al
41e096:	83 c4 10             	add    $0x10,%esp
41e099:	5d                   	pop    %ebp
41e09a:	5f                   	pop    %edi
41e09b:	5e                   	pop    %esi
41e09c:	5b                   	pop    %ebx
41e09d:	c3                   	ret
41e09e:	8b c0                	mov    %eax,%eax
41e0a0:	53                   	push   %ebx
41e0a1:	56                   	push   %esi
41e0a2:	57                   	push   %edi
41e0a3:	8b f9                	mov    %ecx,%edi
41e0a5:	8b f2                	mov    %edx,%esi
41e0a7:	8b d8                	mov    %eax,%ebx
41e0a9:	85 f6                	test   %esi,%esi
41e0ab:	7c 05                	jl     0x41e0b2
41e0ad:	3b 73 14             	cmp    0x14(%ebx),%esi
41e0b0:	7c 0f                	jl     0x41e0c1
41e0b2:	8b 15 c0 b3 49 00    	mov    0x49b3c0,%edx
41e0b8:	8b ce                	mov    %esi,%ecx
41e0ba:	8b c3                	mov    %ebx,%eax
41e0bc:	e8 3b f1 ff ff       	call   0x41d1fc
41e0c1:	8b c7                	mov    %edi,%eax
41e0c3:	8b 53 10             	mov    0x10(%ebx),%edx
41e0c6:	8b 14 f2             	mov    (%edx,%esi,8),%edx
41e0c9:	e8 ea 60 fe ff       	call   0x4041b8
41e0ce:	5f                   	pop    %edi
41e0cf:	5e                   	pop    %esi
41e0d0:	5b                   	pop    %ebx
41e0d1:	c3                   	ret
41e0d2:	8b c0                	mov    %eax,%eax
41e0d4:	8b 40 18             	mov    0x18(%eax),%eax
41e0d7:	c3                   	ret
41e0d8:	8b 40 14             	mov    0x14(%eax),%eax
41e0db:	c3                   	ret
41e0dc:	53                   	push   %ebx
41e0dd:	56                   	push   %esi
41e0de:	8b f2                	mov    %edx,%esi
41e0e0:	8b d8                	mov    %eax,%ebx
41e0e2:	85 f6                	test   %esi,%esi
41e0e4:	7c 05                	jl     0x41e0eb
41e0e6:	3b 73 14             	cmp    0x14(%ebx),%esi
41e0e9:	7c 0f                	jl     0x41e0fa
41e0eb:	8b 15 c0 b3 49 00    	mov    0x49b3c0,%edx
41e0f1:	8b ce                	mov    %esi,%ecx
41e0f3:	8b c3                	mov    %ebx,%eax
41e0f5:	e8 02 f1 ff ff       	call   0x41d1fc
41e0fa:	8b 43 10             	mov    0x10(%ebx),%eax
41e0fd:	8b 44 f0 04          	mov    0x4(%eax,%esi,8),%eax
41e101:	5e                   	pop    %esi
41e102:	5b                   	pop    %ebx
41e103:	c3                   	ret
41e104:	56                   	push   %esi
41e105:	8b 50 18             	mov    0x18(%eax),%edx
41e108:	83 fa 40             	cmp    $0x40,%edx
41e10b:	7e 0e                	jle    0x41e11b
41e10d:	8b f2                	mov    %edx,%esi
41e10f:	85 f6                	test   %esi,%esi
41e111:	79 03                	jns    0x41e116
41e113:	83 c6 03             	add    $0x3,%esi
41e116:	c1 fe 02             	sar    $0x2,%esi
41e119:	eb 11                	jmp    0x41e12c
41e11b:	83 fa 08             	cmp    $0x8,%edx
41e11e:	7e 07                	jle    0x41e127
41e120:	be 10 00 00 00       	mov    $0x10,%esi
41e125:	eb 05                	jmp    0x41e12c
41e127:	be 04 00 00 00       	mov    $0x4,%esi
41e12c:	03 f2                	add    %edx,%esi
41e12e:	8b d6                	mov    %esi,%edx
41e130:	8b 08                	mov    (%eax),%ecx
41e132:	ff 51 28             	call   *0x28(%ecx)
41e135:	5e                   	pop    %esi
41e136:	c3                   	ret
41e137:	90                   	nop
41e138:	53                   	push   %ebx
41e139:	56                   	push   %esi
41e13a:	51                   	push   %ecx
41e13b:	8b f2                	mov    %edx,%esi
41e13d:	8b d8                	mov    %eax,%ebx
41e13f:	80 7b 1c 00          	cmpb   $0x0,0x1c(%ebx)
41e143:	75 0e                	jne    0x41e153
41e145:	8b d6                	mov    %esi,%edx
41e147:	8b c3                	mov    %ebx,%eax
41e149:	e8 de f4 ff ff       	call   0x41d62c
41e14e:	89 04 24             	mov    %eax,(%esp)
41e151:	eb 19                	jmp    0x41e16c
41e153:	8b cc                	mov    %esp,%ecx
41e155:	8b d6                	mov    %esi,%edx
41e157:	8b c3                	mov    %ebx,%eax
41e159:	8b 18                	mov    (%eax),%ebx
41e15b:	ff 93 8c 00 00 00    	call   *0x8c(%ebx)
41e161:	84 c0                	test   %al,%al
41e163:	75 07                	jne    0x41e16c
41e165:	c7 04 24 ff ff ff ff 	movl   $0xffffffff,(%esp)
41e16c:	8b 04 24             	mov    (%esp),%eax
41e16f:	5a                   	pop    %edx
41e170:	5e                   	pop    %esi
41e171:	5b                   	pop    %ebx
41e172:	c3                   	ret
41e173:	90                   	nop
41e174:	53                   	push   %ebx
41e175:	56                   	push   %esi
41e176:	8b f0                	mov    %eax,%esi
41e178:	6a 00                	push   $0x0
41e17a:	8b c6                	mov    %esi,%eax
41e17c:	8b 18                	mov    (%eax),%ebx
41e17e:	ff 53 64             	call   *0x64(%ebx)
41e181:	5e                   	pop    %esi
41e182:	5b                   	pop    %ebx
41e183:	c3                   	ret
41e184:	55                   	push   %ebp
41e185:	8b ec                	mov    %esp,%ebp
41e187:	53                   	push   %ebx
41e188:	56                   	push   %esi
41e189:	57                   	push   %edi
41e18a:	8b f9                	mov    %ecx,%edi
41e18c:	8b f2                	mov    %edx,%esi
41e18e:	8b d8                	mov    %eax,%ebx
41e190:	80 7b 1c 00          	cmpb   $0x0,0x1c(%ebx)
41e194:	74 0f                	je     0x41e1a5
41e196:	8b 15 a0 b1 49 00    	mov    0x49b1a0,%edx
41e19c:	33 c9                	xor    %ecx,%ecx
41e19e:	8b c3                	mov    %ebx,%eax
41e1a0:	e8 57 f0 ff ff       	call   0x41d1fc
41e1a5:	85 f6                	test   %esi,%esi
41e1a7:	7c 05                	jl     0x41e1ae
41e1a9:	3b 73 14             	cmp    0x14(%ebx),%esi
41e1ac:	7e 0f                	jle    0x41e1bd
41e1ae:	8b 15 c0 b3 49 00    	mov    0x49b3c0,%edx
41e1b4:	8b ce                	mov    %esi,%ecx
41e1b6:	8b c3                	mov    %ebx,%eax
41e1b8:	e8 3f f0 ff ff       	call   0x41d1fc
41e1bd:	8b 45 08             	mov    0x8(%ebp),%eax
41e1c0:	50                   	push   %eax
41e1c1:	8b cf                	mov    %edi,%ecx
41e1c3:	8b d6                	mov    %esi,%edx
41e1c5:	8b c3                	mov    %ebx,%eax
41e1c7:	8b 18                	mov    (%eax),%ebx
41e1c9:	ff 93 88 00 00 00    	call   *0x88(%ebx)
41e1cf:	5f                   	pop    %edi
41e1d0:	5e                   	pop    %esi
41e1d1:	5b                   	pop    %ebx
41e1d2:	5d                   	pop    %ebp
41e1d3:	c2 04 00             	ret    $0x4
41e1d6:	8b c0                	mov    %eax,%eax
41e1d8:	55                   	push   %ebp
41e1d9:	8b ec                	mov    %esp,%ebp
41e1db:	53                   	push   %ebx
41e1dc:	56                   	push   %esi
41e1dd:	57                   	push   %edi
41e1de:	8b f9                	mov    %ecx,%edi
41e1e0:	8b f2                	mov    %edx,%esi
41e1e2:	8b d8                	mov    %eax,%ebx
41e1e4:	8b c3                	mov    %ebx,%eax
41e1e6:	8b 10                	mov    (%eax),%edx
41e1e8:	ff 92 84 00 00 00    	call   *0x84(%edx)
41e1ee:	8b 43 14             	mov    0x14(%ebx),%eax
41e1f1:	3b 43 18             	cmp    0x18(%ebx),%eax
41e1f4:	75 07                	jne    0x41e1fd
41e1f6:	8b c3                	mov    %ebx,%eax
41e1f8:	e8 07 ff ff ff       	call   0x41e104
41e1fd:	8b 43 14             	mov    0x14(%ebx),%eax
41e200:	3b f0                	cmp    %eax,%esi
41e202:	7d 1d                	jge    0x41e221
41e204:	8b 53 10             	mov    0x10(%ebx),%edx
41e207:	8d 54 f2 08          	lea    0x8(%edx,%esi,8),%edx
41e20b:	52                   	push   %edx
41e20c:	8b 53 10             	mov    0x10(%ebx),%edx
41e20f:	8d 14 f2             	lea    (%edx,%esi,8),%edx
41e212:	2b c6                	sub    %esi,%eax
41e214:	8b c8                	mov    %eax,%ecx
41e216:	c1 e1 03             	shl    $0x3,%ecx
41e219:	8b c2                	mov    %edx,%eax
41e21b:	5a                   	pop    %edx
41e21c:	e8 53 47 fe ff       	call   0x402974
41e221:	8b 43 10             	mov    0x10(%ebx),%eax
41e224:	8d 04 f0             	lea    (%eax,%esi,8),%eax