42cfaa:	33 db                	xor    %ebx,%ebx
42cfac:	c1 e8 0d             	shr    $0xd,%eax
42cfaf:	43                   	inc    %ebx
42cfb0:	84 c3                	test   %al,%bl
42cfb2:	0f 84 50 01 00 00    	je     0x42d108
42cfb8:	8b 45 08             	mov    0x8(%ebp),%eax
42cfbb:	8b 40 0c             	mov    0xc(%eax),%eax
42cfbe:	90                   	nop
42cfbf:	c1 e8 0c             	shr    $0xc,%eax
42cfc2:	84 c3                	test   %al,%bl
42cfc4:	0f 85 3e 01 00 00    	jne    0x42d108
42cfca:	8b 45 08             	mov    0x8(%ebp),%eax
42cfcd:	8b 40 0c             	mov    0xc(%eax),%eax
42cfd0:	90                   	nop
42cfd1:	d1 e8                	shr    $1,%eax
42cfd3:	84 c3                	test   %al,%bl
42cfd5:	8b 45 08             	mov    0x8(%ebp),%eax
42cfd8:	74 0e                	je     0x42cfe8
42cfda:	6a 10                	push   $0x10
42cfdc:	59                   	pop    %ecx
42cfdd:	83 c0 0c             	add    $0xc,%eax
42cfe0:	f0 09 08             	lock or %ecx,(%eax)
42cfe3:	e9 20 01 00 00       	jmp    0x42d108
42cfe8:	83 c0 0c             	add    $0xc,%eax
42cfeb:	f0 09 18             	lock or %ebx,(%eax)
42cfee:	8b 45 08             	mov    0x8(%ebp),%eax
42cff1:	8b 40 0c             	mov    0xc(%eax),%eax
42cff4:	90                   	nop
42cff5:	a9 c0 04 00 00       	test   $0x4c0,%eax
42cffa:	75 09                	jne    0x42d005
42cffc:	ff 75 08             	push   0x8(%ebp)
42cfff:	e8 ad 0a 00 00       	call   0x42dab1
42d004:	59                   	pop    %ecx
42d005:	8b 45 08             	mov    0x8(%ebp),%eax
42d008:	57                   	push   %edi
42d009:	8b 48 04             	mov    0x4(%eax),%ecx
42d00c:	89 08                	mov    %ecx,(%eax)
42d00e:	8b 45 08             	mov    0x8(%ebp),%eax
42d011:	50                   	push   %eax
42d012:	8b 70 18             	mov    0x18(%eax),%esi
42d015:	8b 78 04             	mov    0x4(%eax),%edi
42d018:	e8 1b e7 ff ff       	call   0x42b738
42d01d:	56                   	push   %esi
42d01e:	57                   	push   %edi
42d01f:	50                   	push   %eax
42d020:	e8 c4 0f 00 00       	call   0x42dfe9
42d025:	8b 4d 08             	mov    0x8(%ebp),%ecx
42d028:	83 c4 10             	add    $0x10,%esp
42d02b:	89 41 08             	mov    %eax,0x8(%ecx)
42d02e:	8b 45 08             	mov    0x8(%ebp),%eax
42d031:	5f                   	pop    %edi
42d032:	8b 50 08             	mov    0x8(%eax),%edx
42d035:	85 d2                	test   %edx,%edx
42d037:	0f 84 b0 00 00 00    	je     0x42d0ed
42d03d:	83 fa ff             	cmp    $0xffffffff,%edx
42d040:	0f 84 a7 00 00 00    	je     0x42d0ed
42d046:	8b 40 0c             	mov    0xc(%eax),%eax
42d049:	90                   	nop
42d04a:	a8 06                	test   $0x6,%al
42d04c:	75 5e                	jne    0x42d0ac
42d04e:	ff 75 08             	push   0x8(%ebp)
42d051:	e8 e2 e6 ff ff       	call   0x42b738
42d056:	59                   	pop    %ecx
42d057:	83 f8 ff             	cmp    $0xffffffff,%eax
42d05a:	74 36                	je     0x42d092
42d05c:	ff 75 08             	push   0x8(%ebp)
42d05f:	e8 d4 e6 ff ff       	call   0x42b738
42d064:	59                   	pop    %ecx
42d065:	83 f8 fe             	cmp    $0xfffffffe,%eax
42d068:	74 28                	je     0x42d092
42d06a:	ff 75 08             	push   0x8(%ebp)
42d06d:	e8 c6 e6 ff ff       	call   0x42b738
42d072:	ff 75 08             	push   0x8(%ebp)
42d075:	8b f0                	mov    %eax,%esi
42d077:	c1 fe 06             	sar    $0x6,%esi
42d07a:	e8 b9 e6 ff ff       	call   0x42b738
42d07f:	59                   	pop    %ecx
42d080:	83 e0 3f             	and    $0x3f,%eax
42d083:	59                   	pop    %ecx
42d084:	6b c8 38             	imul   $0x38,%eax,%ecx
42d087:	8b 04 b5 c0 6d 45 00 	mov    0x456dc0(,%esi,4),%eax
42d08e:	03 c1                	add    %ecx,%eax
42d090:	eb 05                	jmp    0x42d097
42d092:	b8 78 52 45 00       	mov    $0x455278,%eax
42d097:	8a 40 28             	mov    0x28(%eax),%al
42d09a:	24 82                	and    $0x82,%al
42d09c:	3c 82                	cmp    $0x82,%al
42d09e:	75 0c                	jne    0x42d0ac
42d0a0:	8b 45 08             	mov    0x8(%ebp),%eax
42d0a3:	6a 20                	push   $0x20
42d0a5:	59                   	pop    %ecx
42d0a6:	83 c0 0c             	add    $0xc,%eax
42d0a9:	f0 09 08             	lock or %ecx,(%eax)
42d0ac:	8b 45 08             	mov    0x8(%ebp),%eax
42d0af:	81 78 18 00 02 00 00 	cmpl   $0x200,0x18(%eax)
42d0b6:	75 26                	jne    0x42d0de
42d0b8:	8b 40 0c             	mov    0xc(%eax),%eax
42d0bb:	90                   	nop
42d0bc:	c1 e8 06             	shr    $0x6,%eax
42d0bf:	84 c3                	test   %al,%bl
42d0c1:	74 18                	je     0x42d0db
42d0c3:	8b 45 08             	mov    0x8(%ebp),%eax
42d0c6:	8b 40 0c             	mov    0xc(%eax),%eax
42d0c9:	90                   	nop
42d0ca:	c1 e8 08             	shr    $0x8,%eax
42d0cd:	84 c3                	test   %al,%bl
42d0cf:	75 0a                	jne    0x42d0db
42d0d1:	8b 45 08             	mov    0x8(%ebp),%eax
42d0d4:	c7 40 18 00 10 00 00 	movl   $0x1000,0x18(%eax)
42d0db:	8b 45 08             	mov    0x8(%ebp),%eax
42d0de:	8b 08                	mov    (%eax),%ecx
42d0e0:	ff 48 08             	decl   0x8(%eax)
42d0e3:	8a 11                	mov    (%ecx),%dl
42d0e5:	41                   	inc    %ecx
42d0e6:	89 08                	mov    %ecx,(%eax)
42d0e8:	0f b6 c2             	movzbl %dl,%eax
42d0eb:	eb 1e                	jmp    0x42d10b
42d0ed:	33 c9                	xor    %ecx,%ecx
42d0ef:	85 d2                	test   %edx,%edx
42d0f1:	0f 95 c1             	setne  %cl
42d0f4:	83 c0 0c             	add    $0xc,%eax
42d0f7:	8d 0c cd 08 00 00 00 	lea    0x8(,%ecx,8),%ecx
42d0fe:	f0 09 08             	lock or %ecx,(%eax)
42d101:	8b 4d 08             	mov    0x8(%ebp),%ecx
42d104:	83 61 08 00          	andl   $0x0,0x8(%ecx)
42d108:	83 c8 ff             	or     $0xffffffff,%eax
42d10b:	5b                   	pop    %ebx
42d10c:	5e                   	pop    %esi
42d10d:	5d                   	pop    %ebp
42d10e:	c3                   	ret
42d10f:	8b ff                	mov    %edi,%edi
42d111:	55                   	push   %ebp
42d112:	8b ec                	mov    %esp,%ebp
42d114:	5d                   	pop    %ebp
42d115:	e9 66 fe ff ff       	jmp    0x42cf80
42d11a:	8b ff                	mov    %edi,%edi
42d11c:	55                   	push   %ebp
42d11d:	8b ec                	mov    %esp,%ebp
42d11f:	56                   	push   %esi
42d120:	8b 75 08             	mov    0x8(%ebp),%esi
42d123:	85 f6                	test   %esi,%esi
42d125:	74 0c                	je     0x42d133
42d127:	6a e0                	push   $0xffffffe0
42d129:	33 d2                	xor    %edx,%edx
42d12b:	58                   	pop    %eax
42d12c:	f7 f6                	div    %esi
42d12e:	3b 45 0c             	cmp    0xc(%ebp),%eax
42d131:	72 34                	jb     0x42d167
42d133:	0f af 75 0c          	imul   0xc(%ebp),%esi
42d137:	85 f6                	test   %esi,%esi
42d139:	75 17                	jne    0x42d152
42d13b:	46                   	inc    %esi
42d13c:	eb 14                	jmp    0x42d152
42d13e:	e8 8e c9 ff ff       	call   0x429ad1
42d143:	85 c0                	test   %eax,%eax
42d145:	74 20                	je     0x42d167
42d147:	56                   	push   %esi
42d148:	e8 cf c9 ff ff       	call   0x429b1c
42d14d:	59                   	pop    %ecx
42d14e:	85 c0                	test   %eax,%eax
42d150:	74 15                	je     0x42d167
42d152:	56                   	push   %esi
42d153:	6a 08                	push   $0x8
42d155:	ff 35 a8 71 45 00    	push   0x4571a8
42d15b:	ff 15 4c e0 43 00    	call   *0x43e04c
42d161:	85 c0                	test   %eax,%eax
42d163:	74 d9                	je     0x42d13e
42d165:	eb 0d                	jmp    0x42d174
42d167:	e8 c4 68 ff ff       	call   0x423a30
42d16c:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
42d172:	33 c0                	xor    %eax,%eax
42d174:	5e                   	pop    %esi
42d175:	5d                   	pop    %ebp
42d176:	c3                   	ret
42d177:	cc                   	int3
42d178:	cc                   	int3
42d179:	cc                   	int3
42d17a:	cc                   	int3
42d17b:	cc                   	int3
42d17c:	cc                   	int3
42d17d:	cc                   	int3
42d17e:	cc                   	int3
42d17f:	cc                   	int3
42d180:	8b ff                	mov    %edi,%edi
42d182:	55                   	push   %ebp
42d183:	8b ec                	mov    %esp,%ebp
42d185:	33 c9                	xor    %ecx,%ecx
42d187:	5d                   	pop    %ebp
42d188:	e9 7c 00 00 00       	jmp    0x42d209
42d18d:	6a 0c                	push   $0xc
42d18f:	68 b0 32 45 00       	push   $0x4532b0
42d194:	e8 77 d7 fe ff       	call   0x41a910
42d199:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
42d19d:	8b 45 08             	mov    0x8(%ebp),%eax
42d1a0:	ff 30                	push   (%eax)
42d1a2:	e8 fa 96 ff ff       	call   0x4268a1
42d1a7:	59                   	pop    %ecx
42d1a8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42d1ac:	8b 45 0c             	mov    0xc(%ebp),%eax
42d1af:	8b 00                	mov    (%eax),%eax
42d1b1:	ff 30                	push   (%eax)
42d1b3:	e8 2e a6 ff ff       	call   0x4277e6
42d1b8:	59                   	pop    %ecx
42d1b9:	a3 ac 70 45 00       	mov    %eax,0x4570ac
42d1be:	6a 01                	push   $0x1
42d1c0:	68 80 d1 42 00       	push   $0x42d180
42d1c5:	ff 15 ec e1 43 00    	call   *0x43e1ec
42d1cb:	8b f0                	mov    %eax,%esi
42d1cd:	a1 14 50 45 00       	mov    0x455014,%eax
42d1d2:	a3 ac 70 45 00       	mov    %eax,0x4570ac
42d1d7:	89 75 e4             	mov    %esi,-0x1c(%ebp)
42d1da:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
42d1e1:	e8 17 00 00 00       	call   0x42d1fd
42d1e6:	8b c6                	mov    %esi,%eax
42d1e8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42d1eb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
42d1f2:	59                   	pop    %ecx
42d1f3:	5f                   	pop    %edi
42d1f4:	5e                   	pop    %esi
42d1f5:	5b                   	pop    %ebx
42d1f6:	c9                   	leave
42d1f7:	c2 0c 00             	ret    $0xc
42d1fa:	8b 75 e4             	mov    -0x1c(%ebp),%esi
42d1fd:	8b 4d 10             	mov    0x10(%ebp),%ecx
42d200:	ff 31                	push   (%ecx)
42d202:	e8 ea 96 ff ff       	call   0x4268f1
42d207:	59                   	pop    %ecx
42d208:	c3                   	ret
42d209:	8b ff                	mov    %edi,%edi
42d20b:	55                   	push   %ebp
42d20c:	8b ec                	mov    %esp,%ebp
42d20e:	8b 0d 14 50 45 00    	mov    0x455014,%ecx
42d214:	56                   	push   %esi
42d215:	8b 35 ac 70 45 00    	mov    0x4570ac,%esi
42d21b:	83 e1 1f             	and    $0x1f,%ecx
42d21e:	33 35 14 50 45 00    	xor    0x455014,%esi
42d224:	6a 00                	push   $0x0
42d226:	6a 00                	push   $0x0
42d228:	ff 75 08             	push   0x8(%ebp)
42d22b:	d3 ce                	ror    %cl,%esi
42d22d:	8b ce                	mov    %esi,%ecx
42d22f:	ff 15 5c e2 43 00    	call   *0x43e25c
42d235:	ff d6                	call   *%esi
42d237:	5e                   	pop    %esi
42d238:	5d                   	pop    %ebp
42d239:	c2 04 00             	ret    $0x4
42d23c:	68 00 25 44 00       	push   $0x442500
42d241:	68 fc 24 44 00       	push   $0x4424fc
42d246:	68 00 25 44 00       	push   $0x442500
42d24b:	6a 00                	push   $0x0
42d24d:	e8 d3 01 00 00       	call   0x42d425
42d252:	83 c4 10             	add    $0x10,%esp
42d255:	c3                   	ret
42d256:	68 18 25 44 00       	push   $0x442518
42d25b:	68 10 25 44 00       	push   $0x442510
42d260:	68 18 25 44 00       	push   $0x442518
42d265:	6a 01                	push   $0x1
42d267:	e8 b9 01 00 00       	call   0x42d425
42d26c:	83 c4 10             	add    $0x10,%esp
42d26f:	c3                   	ret
42d270:	68 30 25 44 00       	push   $0x442530
42d275:	68 28 25 44 00       	push   $0x442528
42d27a:	68 30 25 44 00       	push   $0x442530
42d27f:	6a 02                	push   $0x2
42d281:	e8 9f 01 00 00       	call   0x42d425
42d286:	83 c4 10             	add    $0x10,%esp
42d289:	c3                   	ret
42d28a:	68 4c 25 44 00       	push   $0x44254c
42d28f:	68 44 25 44 00       	push   $0x442544
42d294:	68 4c 25 44 00       	push   $0x44254c
42d299:	6a 04                	push   $0x4
42d29b:	e8 85 01 00 00       	call   0x42d425
42d2a0:	83 c4 10             	add    $0x10,%esp
42d2a3:	c3                   	ret
42d2a4:	68 64 25 44 00       	push   $0x442564
42d2a9:	68 5c 25 44 00       	push   $0x44255c
42d2ae:	68 64 25 44 00       	push   $0x442564
42d2b3:	6a 08                	push   $0x8
42d2b5:	e8 6b 01 00 00       	call   0x42d425
42d2ba:	83 c4 10             	add    $0x10,%esp
42d2bd:	c3                   	ret
42d2be:	68 a0 25 44 00       	push   $0x4425a0
42d2c3:	68 98 25 44 00       	push   $0x442598
42d2c8:	68 a0 25 44 00       	push   $0x4425a0
42d2cd:	6a 0b                	push   $0xb
42d2cf:	e8 51 01 00 00       	call   0x42d425
42d2d4:	83 c4 10             	add    $0x10,%esp
42d2d7:	c3                   	ret
42d2d8:	68 b8 25 44 00       	push   $0x4425b8
42d2dd:	68 b0 25 44 00       	push   $0x4425b0
42d2e2:	68 b8 25 44 00       	push   $0x4425b8
42d2e7:	6a 0c                	push   $0xc
42d2e9:	e8 37 01 00 00       	call   0x42d425
42d2ee:	83 c4 10             	add    $0x10,%esp
42d2f1:	c3                   	ret
42d2f2:	68 e4 25 44 00       	push   $0x4425e4
42d2f7:	68 dc 25 44 00       	push   $0x4425dc
42d2fc:	68 e4 25 44 00       	push   $0x4425e4
42d301:	6a 10                	push   $0x10
42d303:	e8 1d 01 00 00       	call   0x42d425
42d308:	83 c4 10             	add    $0x10,%esp
42d30b:	c3                   	ret
42d30c:	68 18 26 44 00       	push   $0x442618
42d311:	68 10 26 44 00       	push   $0x442610
42d316:	68 18 26 44 00       	push   $0x442618
42d31b:	6a 12                	push   $0x12
42d31d:	e8 03 01 00 00       	call   0x42d425
42d322:	83 c4 10             	add    $0x10,%esp
42d325:	c3                   	ret
42d326:	68 00 26 44 00       	push   $0x442600
42d32b:	68 f8 25 44 00       	push   $0x4425f8
42d330:	68 00 26 44 00       	push   $0x442600
42d335:	6a 11                	push   $0x11
42d337:	e8 e9 00 00 00       	call   0x42d425
42d33c:	83 c4 10             	add    $0x10,%esp
42d33f:	c3                   	ret
42d340:	68 34 26 44 00       	push   $0x442634
42d345:	68 2c 26 44 00       	push   $0x44262c
42d34a:	68 34 26 44 00       	push   $0x442634
42d34f:	6a 13                	push   $0x13
42d351:	e8 cf 00 00 00       	call   0x42d425
42d356:	83 c4 10             	add    $0x10,%esp
42d359:	c3                   	ret
42d35a:	8b ff                	mov    %edi,%edi
42d35c:	55                   	push   %ebp
42d35d:	8b ec                	mov    %esp,%ebp
42d35f:	51                   	push   %ecx
42d360:	53                   	push   %ebx
42d361:	56                   	push   %esi
42d362:	57                   	push   %edi
42d363:	8b 7d 08             	mov    0x8(%ebp),%edi
42d366:	e9 8d 00 00 00       	jmp    0x42d3f8
42d36b:	8b 0f                	mov    (%edi),%ecx
42d36d:	89 4d fc             	mov    %ecx,-0x4(%ebp)
42d370:	8d 04 8d c8 6f 45 00 	lea    0x456fc8(,%ecx,4),%eax
42d377:	8b 30                	mov    (%eax),%esi
42d379:	90                   	nop
42d37a:	85 f6                	test   %esi,%esi
42d37c:	74 0b                	je     0x42d389
42d37e:	83 fe ff             	cmp    $0xffffffff,%esi
42d381:	0f 85 9a 00 00 00    	jne    0x42d421
42d387:	eb 6c                	jmp    0x42d3f5
42d389:	8b 1c 8d f0 1f 44 00 	mov    0x441ff0(,%ecx,4),%ebx
42d390:	68 00 08 00 00       	push   $0x800
42d395:	6a 00                	push   $0x0
42d397:	53                   	push   %ebx
42d398:	ff 15 ac e1 43 00    	call   *0x43e1ac
42d39e:	8b f0                	mov    %eax,%esi
42d3a0:	85 f6                	test   %esi,%esi
42d3a2:	75 64                	jne    0x42d408