42a048:	d1 e8                	shr    $1,%eax
42a04a:	50                   	push   %eax
42a04b:	ff 75 08             	push   0x8(%ebp)
42a04e:	e8 8d 75 00 00       	call   0x4315e0
42a053:	8b e5                	mov    %ebp,%esp
42a055:	5d                   	pop    %ebp
42a056:	c2 08 00             	ret    $0x8
42a059:	cc                   	int3
42a05a:	cc                   	int3
42a05b:	cc                   	int3
42a05c:	cc                   	int3
42a05d:	cc                   	int3
42a05e:	cc                   	int3
42a05f:	cc                   	int3
42a060:	55                   	push   %ebp
42a061:	8b ec                	mov    %esp,%ebp
42a063:	56                   	push   %esi
42a064:	8b 31                	mov    (%ecx),%esi
42a066:	57                   	push   %edi
42a067:	85 f6                	test   %esi,%esi
42a069:	74 4b                	je     0x42a0b6
42a06b:	8b 76 1c             	mov    0x1c(%esi),%esi
42a06e:	85 f6                	test   %esi,%esi
42a070:	74 44                	je     0x42a0b6
42a072:	8b 7d 0c             	mov    0xc(%ebp),%edi
42a075:	8b 46 04             	mov    0x4(%esi),%eax
42a078:	85 c0                	test   %eax,%eax
42a07a:	74 33                	je     0x42a0af
42a07c:	8b cf                	mov    %edi,%ecx
42a07e:	66 90                	xchg   %ax,%ax
42a080:	66 8b 11             	mov    (%ecx),%dx
42a083:	66 3b 10             	cmp    (%eax),%dx
42a086:	75 1e                	jne    0x42a0a6
42a088:	66 85 d2             	test   %dx,%dx
42a08b:	74 15                	je     0x42a0a2
42a08d:	66 8b 51 02          	mov    0x2(%ecx),%dx
42a091:	66 3b 50 02          	cmp    0x2(%eax),%dx
42a095:	75 0f                	jne    0x42a0a6
42a097:	83 c1 04             	add    $0x4,%ecx
42a09a:	83 c0 04             	add    $0x4,%eax
42a09d:	66 85 d2             	test   %dx,%dx
42a0a0:	75 de                	jne    0x42a080
42a0a2:	33 c0                	xor    %eax,%eax
42a0a4:	eb 05                	jmp    0x42a0ab
42a0a6:	1b c0                	sbb    %eax,%eax
42a0a8:	83 c8 01             	or     $0x1,%eax
42a0ab:	85 c0                	test   %eax,%eax
42a0ad:	74 16                	je     0x42a0c5
42a0af:	8b 76 10             	mov    0x10(%esi),%esi
42a0b2:	85 f6                	test   %esi,%esi
42a0b4:	75 bf                	jne    0x42a075
42a0b6:	8b 45 08             	mov    0x8(%ebp),%eax
42a0b9:	5f                   	pop    %edi
42a0ba:	5e                   	pop    %esi
42a0bb:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
42a0c1:	5d                   	pop    %ebp
42a0c2:	c2 08 00             	ret    $0x8
42a0c5:	8b 45 08             	mov    0x8(%ebp),%eax
42a0c8:	5f                   	pop    %edi
42a0c9:	89 30                	mov    %esi,(%eax)
42a0cb:	5e                   	pop    %esi
42a0cc:	5d                   	pop    %ebp
42a0cd:	c2 08 00             	ret    $0x8
42a0d0:	8b 09                	mov    (%ecx),%ecx
42a0d2:	85 c9                	test   %ecx,%ecx
42a0d4:	74 37                	je     0x42a10d
42a0d6:	8b 01                	mov    (%ecx),%eax
42a0d8:	24 0f                	and    $0xf,%al
42a0da:	3c 02                	cmp    $0x2,%al
42a0dc:	75 07                	jne    0x42a0e5
42a0de:	8b 41 08             	mov    0x8(%ecx),%eax
42a0e1:	85 c0                	test   %eax,%eax
42a0e3:	75 2d                	jne    0x42a112
42a0e5:	8b 41 10             	mov    0x10(%ecx),%eax
42a0e8:	85 c0                	test   %eax,%eax
42a0ea:	74 21                	je     0x42a10d
42a0ec:	0f 1f 40 00          	nopl   0x0(%eax)
42a0f0:	8b 08                	mov    (%eax),%ecx
42a0f2:	83 e1 0f             	and    $0xf,%ecx
42a0f5:	83 f9 03             	cmp    $0x3,%ecx
42a0f8:	74 05                	je     0x42a0ff
42a0fa:	83 f9 04             	cmp    $0x4,%ecx
42a0fd:	75 07                	jne    0x42a106
42a0ff:	8b 48 08             	mov    0x8(%eax),%ecx
42a102:	85 c9                	test   %ecx,%ecx
42a104:	75 0d                	jne    0x42a113
42a106:	8b 40 18             	mov    0x18(%eax),%eax
42a109:	85 c0                	test   %eax,%eax
42a10b:	75 e3                	jne    0x42a0f0
42a10d:	b8 60 ea 4a 00       	mov    $0x4aea60,%eax
42a112:	c3                   	ret
42a113:	8b c1                	mov    %ecx,%eax
42a115:	c3                   	ret
42a116:	cc                   	int3
42a117:	cc                   	int3
42a118:	cc                   	int3
42a119:	cc                   	int3
42a11a:	cc                   	int3
42a11b:	cc                   	int3
42a11c:	cc                   	int3
42a11d:	cc                   	int3
42a11e:	cc                   	int3
42a11f:	cc                   	int3
42a120:	55                   	push   %ebp
42a121:	8b ec                	mov    %esp,%ebp
42a123:	51                   	push   %ecx
42a124:	53                   	push   %ebx
42a125:	8b 5d 0c             	mov    0xc(%ebp),%ebx
42a128:	56                   	push   %esi
42a129:	8b 75 08             	mov    0x8(%ebp),%esi
42a12c:	57                   	push   %edi
42a12d:	8b f9                	mov    %ecx,%edi
42a12f:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
42a135:	8b 0f                	mov    (%edi),%ecx
42a137:	85 c9                	test   %ecx,%ecx
42a139:	0f 84 92 00 00 00    	je     0x42a1d1
42a13f:	8b 01                	mov    (%ecx),%eax
42a141:	83 e0 0f             	and    $0xf,%eax
42a144:	83 f8 01             	cmp    $0x1,%eax
42a147:	74 09                	je     0x42a152
42a149:	83 f8 02             	cmp    $0x2,%eax
42a14c:	0f 85 7f 00 00 00    	jne    0x42a1d1
42a152:	8b 01                	mov    (%ecx),%eax
42a154:	ba 02 00 00 00       	mov    $0x2,%edx
42a159:	c1 e8 08             	shr    $0x8,%eax
42a15c:	2b c8                	sub    %eax,%ecx
42a15e:	8b 09                	mov    (%ecx),%ecx
42a160:	e8 6b dd ff ff       	call   0x427ed0
42a165:	8b d0                	mov    %eax,%edx
42a167:	85 d2                	test   %edx,%edx
42a169:	75 0d                	jne    0x42a178
42a16b:	89 06                	mov    %eax,(%esi)
42a16d:	8b c6                	mov    %esi,%eax
42a16f:	5f                   	pop    %edi
42a170:	5e                   	pop    %esi
42a171:	5b                   	pop    %ebx
42a172:	8b e5                	mov    %ebp,%esp
42a174:	5d                   	pop    %ebp
42a175:	c2 08 00             	ret    $0x8
42a178:	8b 07                	mov    (%edi),%eax
42a17a:	89 42 0c             	mov    %eax,0xc(%edx)
42a17d:	8b 48 10             	mov    0x10(%eax),%ecx
42a180:	85 c9                	test   %ecx,%ecx
42a182:	74 0e                	je     0x42a192
42a184:	8b 41 14             	mov    0x14(%ecx),%eax
42a187:	89 50 18             	mov    %edx,0x18(%eax)
42a18a:	89 42 14             	mov    %eax,0x14(%edx)
42a18d:	89 51 14             	mov    %edx,0x14(%ecx)
42a190:	eb 06                	jmp    0x42a198
42a192:	89 50 10             	mov    %edx,0x10(%eax)
42a195:	89 52 14             	mov    %edx,0x14(%edx)
42a198:	89 16                	mov    %edx,(%esi)
42a19a:	8b 02                	mov    (%edx),%eax
42a19c:	83 e0 0f             	and    $0xf,%eax
42a19f:	83 f8 02             	cmp    $0x2,%eax
42a1a2:	74 0a                	je     0x42a1ae
42a1a4:	83 f8 06             	cmp    $0x6,%eax
42a1a7:	74 05                	je     0x42a1ae
42a1a9:	83 f8 07             	cmp    $0x7,%eax
42a1ac:	75 23                	jne    0x42a1d1
42a1ae:	8b cb                	mov    %ebx,%ecx
42a1b0:	8d 79 02             	lea    0x2(%ecx),%edi
42a1b3:	66 8b 01             	mov    (%ecx),%ax
42a1b6:	83 c1 02             	add    $0x2,%ecx
42a1b9:	66 85 c0             	test   %ax,%ax
42a1bc:	75 f5                	jne    0x42a1b3
42a1be:	2b cf                	sub    %edi,%ecx
42a1c0:	d1 f9                	sar    $1,%ecx
42a1c2:	51                   	push   %ecx
42a1c3:	53                   	push   %ebx
42a1c4:	6a 20                	push   $0x20
42a1c6:	8d 4a 04             	lea    0x4(%edx),%ecx
42a1c9:	e8 d2 7a 00 00       	call   0x431ca0
42a1ce:	83 c4 0c             	add    $0xc,%esp
42a1d1:	5f                   	pop    %edi
42a1d2:	8b c6                	mov    %esi,%eax
42a1d4:	5e                   	pop    %esi
42a1d5:	5b                   	pop    %ebx
42a1d6:	8b e5                	mov    %ebp,%esp
42a1d8:	5d                   	pop    %ebp
42a1d9:	c2 08 00             	ret    $0x8
42a1dc:	cc                   	int3
42a1dd:	cc                   	int3
42a1de:	cc                   	int3
42a1df:	cc                   	int3
42a1e0:	56                   	push   %esi
42a1e1:	8b f1                	mov    %ecx,%esi
42a1e3:	8d 56 08             	lea    0x8(%esi),%edx
42a1e6:	8d 42 14             	lea    0x14(%edx),%eax
42a1e9:	c7 42 04 00 00 00 00 	movl   $0x0,0x4(%edx)
42a1f0:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
42a1f7:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
42a1fe:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
42a205:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
42a20c:	c7 40 18 00 00 00 00 	movl   $0x0,0x18(%eax)
42a213:	c7 40 1c 00 00 00 00 	movl   $0x0,0x1c(%eax)
42a21a:	c7 00 01 14 00 00    	movl   $0x1401,(%eax)
42a220:	89 50 20             	mov    %edx,0x20(%eax)
42a223:	c7 40 24 ec 7f 00 00 	movl   $0x7fec,0x24(%eax)
42a22a:	c7 40 28 00 00 00 00 	movl   $0x0,0x28(%eax)
42a231:	c7 40 2c 00 00 00 00 	movl   $0x0,0x2c(%eax)
42a238:	c7 42 08 00 00 00 00 	movl   $0x0,0x8(%edx)
42a23f:	c7 42 10 00 00 00 00 	movl   $0x0,0x10(%edx)
42a246:	c7 42 0c ec 7f 00 00 	movl   $0x7fec,0xc(%edx)
42a24d:	89 06                	mov    %eax,(%esi)
42a24f:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
42a256:	89 40 14             	mov    %eax,0x14(%eax)
42a259:	8b 0e                	mov    (%esi),%ecx
42a25b:	8d 41 20             	lea    0x20(%ecx),%eax
42a25e:	f7 d9                	neg    %ecx
42a260:	1b c9                	sbb    %ecx,%ecx
42a262:	23 c8                	and    %eax,%ecx
42a264:	8b c6                	mov    %esi,%eax
42a266:	89 0a                	mov    %ecx,(%edx)
42a268:	5e                   	pop    %esi
42a269:	c3                   	ret
42a26a:	cc                   	int3
42a26b:	cc                   	int3
42a26c:	cc                   	int3
42a26d:	cc                   	int3
42a26e:	cc                   	int3
42a26f:	cc                   	int3
42a270:	8d 51 08             	lea    0x8(%ecx),%edx
42a273:	8d 42 14             	lea    0x14(%edx),%eax
42a276:	c7 42 04 00 00 00 00 	movl   $0x0,0x4(%edx)
42a27d:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
42a284:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
42a28b:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
42a292:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
42a299:	c7 40 18 00 00 00 00 	movl   $0x0,0x18(%eax)
42a2a0:	c7 40 1c 00 00 00 00 	movl   $0x0,0x1c(%eax)
42a2a7:	c7 00 01 14 00 00    	movl   $0x1401,(%eax)
42a2ad:	89 50 20             	mov    %edx,0x20(%eax)
42a2b0:	c7 40 24 ec 7f 00 00 	movl   $0x7fec,0x24(%eax)
42a2b7:	c7 40 28 00 00 00 00 	movl   $0x0,0x28(%eax)
42a2be:	c7 40 2c 00 00 00 00 	movl   $0x0,0x2c(%eax)
42a2c5:	c7 42 08 00 00 00 00 	movl   $0x0,0x8(%edx)
42a2cc:	c7 42 10 00 00 00 00 	movl   $0x0,0x10(%edx)
42a2d3:	c7 42 0c ec 7f 00 00 	movl   $0x7fec,0xc(%edx)
42a2da:	89 01                	mov    %eax,(%ecx)
42a2dc:	89 40 14             	mov    %eax,0x14(%eax)
42a2df:	8b 09                	mov    (%ecx),%ecx
42a2e1:	8d 41 20             	lea    0x20(%ecx),%eax
42a2e4:	f7 d9                	neg    %ecx
42a2e6:	1b c9                	sbb    %ecx,%ecx
42a2e8:	23 c8                	and    %eax,%ecx
42a2ea:	89 0a                	mov    %ecx,(%edx)
42a2ec:	c3                   	ret
42a2ed:	cc                   	int3
42a2ee:	cc                   	int3
42a2ef:	cc                   	int3
42a2f0:	56                   	push   %esi
42a2f1:	57                   	push   %edi
42a2f2:	8b f9                	mov    %ecx,%edi
42a2f4:	8b 47 04             	mov    0x4(%edi),%eax
42a2f7:	85 c0                	test   %eax,%eax
42a2f9:	74 10                	je     0x42a30b
42a2fb:	50                   	push   %eax
42a2fc:	e8 81 f3 04 00       	call   0x479682
42a301:	83 c4 04             	add    $0x4,%esp
42a304:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
42a30b:	8b 07                	mov    (%edi),%eax
42a30d:	8b 70 2c             	mov    0x2c(%eax),%esi
42a310:	85 f6                	test   %esi,%esi
42a312:	74 16                	je     0x42a32a
42a314:	8b 06                	mov    (%esi),%eax
42a316:	85 c0                	test   %eax,%eax
42a318:	74 09                	je     0x42a323
42a31a:	50                   	push   %eax
42a31b:	e8 62 f3 04 00       	call   0x479682
42a320:	83 c4 04             	add    $0x4,%esp
42a323:	8b 76 04             	mov    0x4(%esi),%esi
42a326:	85 f6                	test   %esi,%esi
42a328:	75 ea                	jne    0x42a314
42a32a:	8b 0f                	mov    (%edi),%ecx
42a32c:	8b 01                	mov    (%ecx),%eax
42a32e:	c1 e8 08             	shr    $0x8,%eax
42a331:	2b c8                	sub    %eax,%ecx
42a333:	8b 41 08             	mov    0x8(%ecx),%eax
42a336:	85 c0                	test   %eax,%eax
42a338:	74 18                	je     0x42a352
42a33a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
42a340:	8b 70 08             	mov    0x8(%eax),%esi
42a343:	50                   	push   %eax
42a344:	e8 39 f3 04 00       	call   0x479682
42a349:	83 c4 04             	add    $0x4,%esp
42a34c:	8b c6                	mov    %esi,%eax
42a34e:	85 f6                	test   %esi,%esi
42a350:	75 ee                	jne    0x42a340
42a352:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
42a358:	5f                   	pop    %edi
42a359:	5e                   	pop    %esi
42a35a:	c3                   	ret
42a35b:	cc                   	int3
42a35c:	cc                   	int3
42a35d:	cc                   	int3
42a35e:	cc                   	int3
42a35f:	cc                   	int3
42a360:	55                   	push   %ebp
42a361:	8b ec                	mov    %esp,%ebp
42a363:	83 e4 f8             	and    $0xfffffff8,%esp
42a366:	b8 1c 28 00 00       	mov    $0x281c,%eax
42a36b:	e8 30 04 04 00       	call   0x46a7a0
42a370:	a1 14 40 4c 00       	mov    0x4c4014,%eax
42a375:	33 c4                	xor    %esp,%eax
42a377:	89 84 24 18 28 00 00 	mov    %eax,0x2818(%esp)
42a37e:	8b 45 08             	mov    0x8(%ebp),%eax
42a381:	53                   	push   %ebx
42a382:	8b d9                	mov    %ecx,%ebx
42a384:	89 84 24 0c 28 00 00 	mov    %eax,0x280c(%esp)
42a38b:	c7 84 24 10 28 00 00 	movl   $0x0,0x2810(%esp)
42a392:	00 00 00 00
42a396:	c7 84 24 14 28 00 00 	movl   $0x2,0x2814(%esp)
42a39d:	02 00 00 00
42a3a1:	56                   	push   %esi
42a3a2:	8b 03                	mov    (%ebx),%eax
42a3a4:	57                   	push   %edi
42a3a5:	89 5c 24 10          	mov    %ebx,0x10(%esp)
42a3a9:	c7 44 24 14 00 d8 00 	movl   $0xd800,0x14(%esp)
42a3b0:	00
42a3b1:	8b 48 10             	mov    0x10(%eax),%ecx
42a3b4:	85 c9                	test   %ecx,%ecx
42a3b6:	74 1a                	je     0x42a3d2
42a3b8:	8b 01                	mov    (%ecx),%eax
42a3ba:	83 e0 0f             	and    $0xf,%eax
42a3bd:	83 f8 07             	cmp    $0x7,%eax
42a3c0:	0f 84 af 01 00 00    	je     0x42a575
42a3c6:	83 f8 02             	cmp    $0x2,%eax
42a3c9:	74 07                	je     0x42a3d2
42a3cb:	8b 49 18             	mov    0x18(%ecx),%ecx
42a3ce:	85 c9                	test   %ecx,%ecx
42a3d0:	75 e6                	jne    0x42a3b8
42a3d2:	68 1c 49 4b 00       	push   $0x4b491c
42a3d7:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
42a3db:	e8 90 ee ff ff       	call   0x429270
42a3e0:	8b 8c 24 18 28 00 00 	mov    0x2818(%esp),%ecx
42a3e7:	81 f9 a8 06 00 00    	cmp    $0x6a8,%ecx
42a3ed:	0f 86 70 01 00 00    	jbe    0x42a563
42a3f3:	8b 84 24 1c 28 00 00 	mov    0x281c(%esp),%eax
42a3fa:	83 f8 02             	cmp    $0x2,%eax
42a3fd:	75 0d                	jne    0x42a40c
42a3ff:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
42a402:	50                   	push   %eax
42a403:	8d 44 24 1c          	lea    0x1c(%esp),%eax
42a407:	e9 3c 01 00 00       	jmp    0x42a548
42a40c:	83 f8 03             	cmp    $0x3,%eax
42a40f:	75 24                	jne    0x42a435
42a411:	33 d2                	xor    %edx,%edx
42a413:	85 c9                	test   %ecx,%ecx
42a415:	74 16                	je     0x42a42d