413f0d:	e8 46 ed fe ff       	call   0x402c58
413f12:	83 3c 24 00          	cmpl   $0x0,(%esp)
413f16:	74 0c                	je     0x413f24
413f18:	b1 02                	mov    $0x2,%cl
413f1a:	8b 14 24             	mov    (%esp),%edx
413f1d:	8b c3                	mov    %ebx,%eax
413f1f:	8b 18                	mov    (%eax),%ebx
413f21:	ff 53 04             	call   *0x4(%ebx)
413f24:	5a                   	pop    %edx
413f25:	5e                   	pop    %esi
413f26:	5b                   	pop    %ebx
413f27:	c3                   	ret
413f28:	8b 45 04             	mov    0x4(%ebp),%eax
413f2b:	c3                   	ret
413f2c:	53                   	push   %ebx
413f2d:	56                   	push   %esi
413f2e:	83 c4 f8             	add    $0xfffffff8,%esp
413f31:	8b f1                	mov    %ecx,%esi
413f33:	8b da                	mov    %edx,%ebx
413f35:	e8 ee ff ff ff       	call   0x413f28
413f3a:	50                   	push   %eax
413f3b:	89 74 24 04          	mov    %esi,0x4(%esp)
413f3f:	c6 44 24 08 00       	movb   $0x0,0x8(%esp)
413f44:	8d 44 24 04          	lea    0x4(%esp),%eax
413f48:	50                   	push   %eax
413f49:	6a 00                	push   $0x0
413f4b:	8b cb                	mov    %ebx,%ecx
413f4d:	b2 01                	mov    $0x1,%dl
413f4f:	a1 44 1a 41 00       	mov    0x411a44,%eax
413f54:	e8 f7 7a ff ff       	call   0x40ba50
413f59:	e9 26 00 ff ff       	jmp    0x403f84
413f5e:	59                   	pop    %ecx
413f5f:	5a                   	pop    %edx
413f60:	5e                   	pop    %esi
413f61:	5b                   	pop    %ebx
413f62:	c3                   	ret
413f63:	90                   	nop
413f64:	55                   	push   %ebp
413f65:	8b ec                	mov    %esp,%ebp
413f67:	6a 00                	push   $0x0
413f69:	53                   	push   %ebx
413f6a:	56                   	push   %esi
413f6b:	8b f1                	mov    %ecx,%esi
413f6d:	8b da                	mov    %edx,%ebx
413f6f:	33 c0                	xor    %eax,%eax
413f71:	55                   	push   %ebp
413f72:	68 ac 3f 41 00       	push   $0x413fac
413f77:	64 ff 30             	push   %fs:(%eax)
413f7a:	64 89 20             	mov    %esp,%fs:(%eax)
413f7d:	8d 55 fc             	lea    -0x4(%ebp),%edx
413f80:	8b c3                	mov    %ebx,%eax
413f82:	e8 b5 21 ff ff       	call   0x40613c
413f87:	8b 55 fc             	mov    -0x4(%ebp),%edx
413f8a:	8b ce                	mov    %esi,%ecx
413f8c:	a1 6c 1c 41 00       	mov    0x411c6c,%eax
413f91:	e8 96 ff ff ff       	call   0x413f2c
413f96:	33 c0                	xor    %eax,%eax
413f98:	5a                   	pop    %edx
413f99:	59                   	pop    %ecx
413f9a:	59                   	pop    %ecx
413f9b:	64 89 10             	mov    %edx,%fs:(%eax)
413f9e:	68 b3 3f 41 00       	push   $0x413fb3
413fa3:	8d 45 fc             	lea    -0x4(%ebp),%eax
413fa6:	e8 c5 05 ff ff       	call   0x404570
413fab:	c3                   	ret
413fac:	e9 9b ff fe ff       	jmp    0x403f4c
413fb1:	eb f0                	jmp    0x413fa3
413fb3:	5e                   	pop    %esi
413fb4:	5b                   	pop    %ebx
413fb5:	59                   	pop    %ecx
413fb6:	5d                   	pop    %ebp
413fb7:	c3                   	ret
413fb8:	53                   	push   %ebx
413fb9:	8b d8                	mov    %eax,%ebx
413fbb:	8b 43 08             	mov    0x8(%ebx),%eax
413fbe:	3b 43 0c             	cmp    0xc(%ebx),%eax
413fc1:	75 06                	jne    0x413fc9
413fc3:	8b c3                	mov    %ebx,%eax
413fc5:	8b 10                	mov    (%eax),%edx
413fc7:	ff 12                	call   *(%edx)
413fc9:	8b c3                	mov    %ebx,%eax
413fcb:	5b                   	pop    %ebx
413fcc:	c3                   	ret
413fcd:	8d 40 00             	lea    0x0(%eax),%eax
413fd0:	53                   	push   %ebx
413fd1:	51                   	push   %ecx
413fd2:	8b d8                	mov    %eax,%ebx
413fd4:	33 d2                	xor    %edx,%edx
413fd6:	8b c3                	mov    %ebx,%eax
413fd8:	e8 0b 00 00 00       	call   0x413fe8
413fdd:	89 04 24             	mov    %eax,(%esp)
413fe0:	8b 04 24             	mov    (%esp),%eax
413fe3:	5a                   	pop    %edx
413fe4:	5b                   	pop    %ebx
413fe5:	c3                   	ret
413fe6:	8b c0                	mov    %eax,%eax
413fe8:	53                   	push   %ebx
413fe9:	56                   	push   %esi
413fea:	51                   	push   %ecx
413feb:	8b f2                	mov    %edx,%esi
413fed:	8b d8                	mov    %eax,%ebx
413fef:	85 f6                	test   %esi,%esi
413ff1:	7c 05                	jl     0x413ff8
413ff3:	3b 73 08             	cmp    0x8(%ebx),%esi
413ff6:	7c 0f                	jl     0x414007
413ff8:	8b 15 70 0c 46 00    	mov    0x460c70,%edx
413ffe:	8b ce                	mov    %esi,%ecx
414000:	8b 03                	mov    (%ebx),%eax
414002:	e8 5d ff ff ff       	call   0x413f64
414007:	8b 43 04             	mov    0x4(%ebx),%eax
41400a:	8b 04 b0             	mov    (%eax,%esi,4),%eax
41400d:	89 04 24             	mov    %eax,(%esp)
414010:	8b 04 24             	mov    (%esp),%eax
414013:	5a                   	pop    %edx
414014:	5e                   	pop    %esi
414015:	5b                   	pop    %ebx
414016:	c3                   	ret
414017:	90                   	nop
414018:	8b 50 0c             	mov    0xc(%eax),%edx
41401b:	83 fa 40             	cmp    $0x40,%edx
41401e:	7e 0e                	jle    0x41402e
414020:	8b ca                	mov    %edx,%ecx
414022:	85 c9                	test   %ecx,%ecx
414024:	79 03                	jns    0x414029
414026:	83 c1 03             	add    $0x3,%ecx
414029:	c1 f9 02             	sar    $0x2,%ecx
41402c:	eb 11                	jmp    0x41403f
41402e:	83 fa 08             	cmp    $0x8,%edx
414031:	7e 07                	jle    0x41403a
414033:	b9 10 00 00 00       	mov    $0x10,%ecx
414038:	eb 05                	jmp    0x41403f
41403a:	b9 04 00 00 00       	mov    $0x4,%ecx
41403f:	03 ca                	add    %edx,%ecx
414041:	8b d1                	mov    %ecx,%edx
414043:	e8 24 01 00 00       	call   0x41416c
414048:	c3                   	ret
414049:	8d 40 00             	lea    0x0(%eax),%eax
41404c:	53                   	push   %ebx
41404d:	33 c9                	xor    %ecx,%ecx
41404f:	eb 01                	jmp    0x414052
414051:	41                   	inc    %ecx
414052:	3b 48 08             	cmp    0x8(%eax),%ecx
414055:	7d 08                	jge    0x41405f
414057:	8b 58 04             	mov    0x4(%eax),%ebx
41405a:	3b 14 8b             	cmp    (%ebx,%ecx,4),%edx
41405d:	75 f2                	jne    0x414051
41405f:	3b 48 08             	cmp    0x8(%eax),%ecx
414062:	75 03                	jne    0x414067
414064:	83 c9 ff             	or     $0xffffffff,%ecx
414067:	8b c1                	mov    %ecx,%eax
414069:	5b                   	pop    %ebx
41406a:	c3                   	ret
41406b:	90                   	nop
41406c:	53                   	push   %ebx
41406d:	56                   	push   %esi
41406e:	57                   	push   %edi
41406f:	8b f9                	mov    %ecx,%edi
414071:	8b f2                	mov    %edx,%esi
414073:	8b d8                	mov    %eax,%ebx
414075:	85 f6                	test   %esi,%esi
414077:	7c 05                	jl     0x41407e
414079:	3b 73 08             	cmp    0x8(%ebx),%esi
41407c:	7e 0f                	jle    0x41408d
41407e:	8b 15 70 0c 46 00    	mov    0x460c70,%edx
414084:	8b ce                	mov    %esi,%ecx
414086:	8b 03                	mov    (%ebx),%eax
414088:	e8 d7 fe ff ff       	call   0x413f64
41408d:	8b 43 08             	mov    0x8(%ebx),%eax
414090:	3b 43 0c             	cmp    0xc(%ebx),%eax
414093:	75 06                	jne    0x41409b
414095:	8b c3                	mov    %ebx,%eax
414097:	8b 10                	mov    (%eax),%edx
414099:	ff 12                	call   *(%edx)
41409b:	8b 43 08             	mov    0x8(%ebx),%eax
41409e:	3b f0                	cmp    %eax,%esi
4140a0:	7d 19                	jge    0x4140bb
4140a2:	2b c6                	sub    %esi,%eax
4140a4:	8b c8                	mov    %eax,%ecx
4140a6:	c1 e1 02             	shl    $0x2,%ecx
4140a9:	8b 43 04             	mov    0x4(%ebx),%eax
4140ac:	8d 54 b0 04          	lea    0x4(%eax,%esi,4),%edx
4140b0:	8b 43 04             	mov    0x4(%ebx),%eax
4140b3:	8d 04 b0             	lea    (%eax,%esi,4),%eax
4140b6:	e8 9d eb fe ff       	call   0x402c58
4140bb:	8b 43 04             	mov    0x4(%ebx),%eax
4140be:	89 3c b0             	mov    %edi,(%eax,%esi,4)
4140c1:	ff 43 08             	incl   0x8(%ebx)
4140c4:	85 ff                	test   %edi,%edi
4140c6:	74 0b                	je     0x4140d3
4140c8:	33 c9                	xor    %ecx,%ecx
4140ca:	8b d7                	mov    %edi,%edx
4140cc:	8b c3                	mov    %ebx,%eax
4140ce:	8b 18                	mov    (%eax),%ebx
4140d0:	ff 53 04             	call   *0x4(%ebx)
4140d3:	5f                   	pop    %edi
4140d4:	5e                   	pop    %esi
4140d5:	5b                   	pop    %ebx
4140d6:	c3                   	ret
4140d7:	90                   	nop
4140d8:	53                   	push   %ebx
4140d9:	51                   	push   %ecx
4140da:	8b d8                	mov    %eax,%ebx
4140dc:	8b 53 08             	mov    0x8(%ebx),%edx
4140df:	4a                   	dec    %edx
4140e0:	8b c3                	mov    %ebx,%eax
4140e2:	e8 01 ff ff ff       	call   0x413fe8
4140e7:	89 04 24             	mov    %eax,(%esp)
4140ea:	8b 04 24             	mov    (%esp),%eax
4140ed:	5a                   	pop    %edx
4140ee:	5b                   	pop    %ebx
4140ef:	c3                   	ret
4140f0:	53                   	push   %ebx
4140f1:	56                   	push   %esi
4140f2:	57                   	push   %edi
4140f3:	51                   	push   %ecx
4140f4:	8b f9                	mov    %ecx,%edi
4140f6:	8b f2                	mov    %edx,%esi
4140f8:	8b d8                	mov    %eax,%ebx
4140fa:	85 f6                	test   %esi,%esi
4140fc:	7c 05                	jl     0x414103
4140fe:	3b 73 08             	cmp    0x8(%ebx),%esi
414101:	7c 0f                	jl     0x414112
414103:	8b 15 70 0c 46 00    	mov    0x460c70,%edx
414109:	8b ce                	mov    %esi,%ecx
41410b:	8b 03                	mov    (%ebx),%eax
41410d:	e8 52 fe ff ff       	call   0x413f64
414112:	8b 43 04             	mov    0x4(%ebx),%eax
414115:	8b 04 b0             	mov    (%eax,%esi,4),%eax
414118:	3b f8                	cmp    %eax,%edi
41411a:	74 2a                	je     0x414146
41411c:	89 04 24             	mov    %eax,(%esp)
41411f:	8b 43 04             	mov    0x4(%ebx),%eax
414122:	89 3c b0             	mov    %edi,(%eax,%esi,4)
414125:	83 3c 24 00          	cmpl   $0x0,(%esp)
414129:	74 0c                	je     0x414137
41412b:	b1 02                	mov    $0x2,%cl
41412d:	8b 14 24             	mov    (%esp),%edx
414130:	8b c3                	mov    %ebx,%eax
414132:	8b 30                	mov    (%eax),%esi
414134:	ff 56 04             	call   *0x4(%esi)
414137:	85 ff                	test   %edi,%edi
414139:	74 0b                	je     0x414146
41413b:	33 c9                	xor    %ecx,%ecx
41413d:	8b d7                	mov    %edi,%edx
41413f:	8b c3                	mov    %ebx,%eax
414141:	8b 18                	mov    (%eax),%ebx
414143:	ff 53 04             	call   *0x4(%ebx)
414146:	5a                   	pop    %edx
414147:	5f                   	pop    %edi
414148:	5e                   	pop    %esi
414149:	5b                   	pop    %ebx
41414a:	c3                   	ret
41414b:	90                   	nop
41414c:	53                   	push   %ebx
41414d:	56                   	push   %esi
41414e:	8b d8                	mov    %eax,%ebx
414150:	8b c3                	mov    %ebx,%eax
414152:	e8 f5 fe ff ff       	call   0x41404c
414157:	8b f0                	mov    %eax,%esi
414159:	85 f6                	test   %esi,%esi
41415b:	7c 09                	jl     0x414166
41415d:	8b d6                	mov    %esi,%edx
41415f:	8b c3                	mov    %ebx,%eax
414161:	e8 5e fd ff ff       	call   0x413ec4
414166:	8b c6                	mov    %esi,%eax
414168:	5e                   	pop    %esi
414169:	5b                   	pop    %ebx
41416a:	c3                   	ret
41416b:	90                   	nop
41416c:	53                   	push   %ebx
41416d:	56                   	push   %esi
41416e:	8b f2                	mov    %edx,%esi
414170:	8b d8                	mov    %eax,%ebx
414172:	3b 73 08             	cmp    0x8(%ebx),%esi
414175:	7c 08                	jl     0x41417f
414177:	81 fe ff ff ff 07    	cmp    $0x7ffffff,%esi
41417d:	7e 0f                	jle    0x41418e
41417f:	8b 15 b0 0b 46 00    	mov    0x460bb0,%edx
414185:	8b ce                	mov    %esi,%ecx
414187:	8b 03                	mov    (%ebx),%eax
414189:	e8 d6 fd ff ff       	call   0x413f64
41418e:	3b 73 0c             	cmp    0xc(%ebx),%esi
414191:	74 10                	je     0x4141a3
414193:	8b d6                	mov    %esi,%edx
414195:	c1 e2 02             	shl    $0x2,%edx
414198:	8d 43 04             	lea    0x4(%ebx),%eax
41419b:	e8 e8 e8 fe ff       	call   0x402a88
4141a0:	89 73 0c             	mov    %esi,0xc(%ebx)
4141a3:	5e                   	pop    %esi
4141a4:	5b                   	pop    %ebx
4141a5:	c3                   	ret
4141a6:	8b c0                	mov    %eax,%eax
4141a8:	53                   	push   %ebx
4141a9:	56                   	push   %esi
4141aa:	57                   	push   %edi
4141ab:	55                   	push   %ebp
4141ac:	8b f2                	mov    %edx,%esi
4141ae:	8b d8                	mov    %eax,%ebx
4141b0:	85 f6                	test   %esi,%esi
4141b2:	7c 08                	jl     0x4141bc
4141b4:	81 fe ff ff ff 07    	cmp    $0x7ffffff,%esi
4141ba:	7e 0f                	jle    0x4141cb
4141bc:	8b 15 2c 0b 46 00    	mov    0x460b2c,%edx
4141c2:	8b ce                	mov    %esi,%ecx
4141c4:	8b 03                	mov    (%ebx),%eax
4141c6:	e8 99 fd ff ff       	call   0x413f64
4141cb:	3b 73 0c             	cmp    0xc(%ebx),%esi
4141ce:	7e 09                	jle    0x4141d9
4141d0:	8b d6                	mov    %esi,%edx
4141d2:	8b c3                	mov    %ebx,%eax
4141d4:	e8 93 ff ff ff       	call   0x41416c
4141d9:	8b 43 08             	mov    0x8(%ebx),%eax
4141dc:	3b f0                	cmp    %eax,%esi
4141de:	7e 19                	jle    0x4141f9
4141e0:	8b 53 04             	mov    0x4(%ebx),%edx
4141e3:	8d 14 82             	lea    (%edx,%eax,4),%edx
4141e6:	8b ce                	mov    %esi,%ecx
4141e8:	2b c8                	sub    %eax,%ecx
4141ea:	8b c1                	mov    %ecx,%eax
4141ec:	c1 e0 02             	shl    $0x2,%eax
4141ef:	33 c9                	xor    %ecx,%ecx
4141f1:	92                   	xchg   %eax,%edx
4141f2:	e8 25 ed fe ff       	call   0x402f1c
4141f7:	eb 17                	jmp    0x414210
4141f9:	8b e8                	mov    %eax,%ebp
4141fb:	4d                   	dec    %ebp
4141fc:	8b fe                	mov    %esi,%edi
4141fe:	2b fd                	sub    %ebp,%edi
414200:	7f 0e                	jg     0x414210
414202:	4f                   	dec    %edi
414203:	8b d5                	mov    %ebp,%edx
414205:	8b c3                	mov    %ebx,%eax
414207:	e8 b8 fc ff ff       	call   0x413ec4
41420c:	4d                   	dec    %ebp
41420d:	47                   	inc    %edi
41420e:	75 f3                	jne    0x414203
414210:	89 73 08             	mov    %esi,0x8(%ebx)
414213:	5d                   	pop    %ebp
414214:	5f                   	pop    %edi
414215:	5e                   	pop    %esi
414216:	5b                   	pop    %ebx
414217:	c3                   	ret
414218:	c3                   	ret
414219:	8d 40 00             	lea    0x0(%eax),%eax
41421c:	53                   	push   %ebx
41421d:	56                   	push   %esi
41421e:	84 d2                	test   %dl,%dl
414220:	74 08                	je     0x41422a
414222:	83 c4 f0             	add    $0xfffffff0,%esp
414225:	e8 f2 f8 fe ff       	call   0x403b1c