52a08b:	89 84 24 88 01 00 00 	mov    %eax,0x188(%esp)
52a092:	8b 44 24 4c          	mov    0x4c(%esp),%eax
52a096:	0f ac f0 0f          	shrd   $0xf,%esi,%eax
52a09a:	8b 74 24 38          	mov    0x38(%esp),%esi
52a09e:	c1 e1 06             	shl    $0x6,%ecx
52a0a1:	0a c1                	or     %cl,%al
52a0a3:	8b 4c 24 10          	mov    0x10(%esp),%ecx
52a0a7:	88 42 0f             	mov    %al,0xf(%edx)
52a0aa:	8b c6                	mov    %esi,%eax
52a0ac:	0f ac c1 02          	shrd   $0x2,%eax,%ecx
52a0b0:	88 4a 10             	mov    %cl,0x10(%edx)
52a0b3:	8b 4c 24 10          	mov    0x10(%esp),%ecx
52a0b7:	0f ac c1 0a          	shrd   $0xa,%eax,%ecx
52a0bb:	0f ac 74 24 10 12    	shrd   $0x12,%esi,0x10(%esp)
52a0c1:	8b 74 24 44          	mov    0x44(%esp),%esi
52a0c5:	8b c6                	mov    %esi,%eax
52a0c7:	88 4a 11             	mov    %cl,0x11(%edx)
52a0ca:	8b 4c 24 34          	mov    0x34(%esp),%ecx
52a0ce:	0f a4 c8 03          	shld   $0x3,%ecx,%eax
52a0d2:	8b 44 24 10          	mov    0x10(%esp),%eax
52a0d6:	c1 e1 03             	shl    $0x3,%ecx
52a0d9:	0a c1                	or     %cl,%al
52a0db:	8b 4c 24 34          	mov    0x34(%esp),%ecx
52a0df:	88 42 12             	mov    %al,0x12(%edx)
52a0e2:	8b c6                	mov    %esi,%eax
52a0e4:	0f ac c1 05          	shrd   $0x5,%eax,%ecx
52a0e8:	8b 44 24 34          	mov    0x34(%esp),%eax
52a0ec:	0f ac f0 0d          	shrd   $0xd,%esi,%eax
52a0f0:	8b 74 24 1c          	mov    0x1c(%esp),%esi
52a0f4:	88 42 14             	mov    %al,0x14(%edx)
52a0f7:	8b 44 24 20          	mov    0x20(%esp),%eax
52a0fb:	88 4a 13             	mov    %cl,0x13(%edx)
52a0fe:	8b c8                	mov    %eax,%ecx
52a100:	88 42 15             	mov    %al,0x15(%edx)
52a103:	8b 44 24 40          	mov    0x40(%esp),%eax
52a107:	0f ac c1 08          	shrd   $0x8,%eax,%ecx
52a10b:	8b c7                	mov    %edi,%eax
52a10d:	88 4a 16             	mov    %cl,0x16(%edx)
52a110:	8b ce                	mov    %esi,%ecx
52a112:	0f a4 c8 05          	shld   $0x5,%ecx,%eax
52a116:	8b 44 24 40          	mov    0x40(%esp),%eax
52a11a:	0f ac 44 24 20 10    	shrd   $0x10,%eax,0x20(%esp)
52a120:	c1 e1 05             	shl    $0x5,%ecx
52a123:	8b c7                	mov    %edi,%eax
52a125:	0a 4c 24 20          	or     0x20(%esp),%cl
52a129:	88 4a 17             	mov    %cl,0x17(%edx)
52a12c:	8b ce                	mov    %esi,%ecx
52a12e:	0f ac c1 03          	shrd   $0x3,%eax,%ecx
52a132:	88 4a 18             	mov    %cl,0x18(%edx)
52a135:	8b ce                	mov    %esi,%ecx
52a137:	0f ac c1 0b          	shrd   $0xb,%eax,%ecx
52a13b:	0f ac fe 13          	shrd   $0x13,%edi,%esi
52a13f:	88 4a 19             	mov    %cl,0x19(%edx)
52a142:	8b 4c 24 14          	mov    0x14(%esp),%ecx
52a146:	89 74 24 1c          	mov    %esi,0x1c(%esp)
52a14a:	8b 74 24 24          	mov    0x24(%esp),%esi
52a14e:	8b c6                	mov    %esi,%eax
52a150:	0f a4 c8 02          	shld   $0x2,%ecx,%eax
52a154:	8b 44 24 1c          	mov    0x1c(%esp),%eax
52a158:	c1 e1 02             	shl    $0x2,%ecx
52a15b:	0a c1                	or     %cl,%al
52a15d:	8b 4c 24 14          	mov    0x14(%esp),%ecx
52a161:	88 42 1a             	mov    %al,0x1a(%edx)
52a164:	8b c6                	mov    %esi,%eax
52a166:	0f ac c1 06          	shrd   $0x6,%eax,%ecx
52a16a:	8b c3                	mov    %ebx,%eax
52a16c:	88 4a 1b             	mov    %cl,0x1b(%edx)
52a16f:	8b cd                	mov    %ebp,%ecx
52a171:	0f a4 c8 07          	shld   $0x7,%ecx,%eax
52a175:	89 84 24 88 01 00 00 	mov    %eax,0x188(%esp)
52a17c:	8b 44 24 14          	mov    0x14(%esp),%eax
52a180:	0f ac f0 0e          	shrd   $0xe,%esi,%eax
52a184:	c1 e1 07             	shl    $0x7,%ecx
52a187:	0a c1                	or     %cl,%al
52a189:	8b cd                	mov    %ebp,%ecx
52a18b:	88 42 1c             	mov    %al,0x1c(%edx)
52a18e:	8b c3                	mov    %ebx,%eax
52a190:	0f ac c1 01          	shrd   $0x1,%eax,%ecx
52a194:	5f                   	pop    %edi
52a195:	88 4a 1d             	mov    %cl,0x1d(%edx)
52a198:	8b cd                	mov    %ebp,%ecx
52a19a:	0f ac c1 09          	shrd   $0x9,%eax,%ecx
52a19e:	8b c5                	mov    %ebp,%eax
52a1a0:	5e                   	pop    %esi
52a1a1:	0f ac d8 11          	shrd   $0x11,%ebx,%eax
52a1a5:	5d                   	pop    %ebp
52a1a6:	88 4a 1e             	mov    %cl,0x1e(%edx)
52a1a9:	88 42 1f             	mov    %al,0x1f(%edx)
52a1ac:	5b                   	pop    %ebx
52a1ad:	81 c4 7c 01 00 00    	add    $0x17c,%esp
52a1b3:	c3                   	ret
52a1b4:	cc                   	int3
52a1b5:	cc                   	int3
52a1b6:	cc                   	int3
52a1b7:	cc                   	int3
52a1b8:	cc                   	int3
52a1b9:	cc                   	int3
52a1ba:	cc                   	int3
52a1bb:	cc                   	int3
52a1bc:	cc                   	int3
52a1bd:	cc                   	int3
52a1be:	cc                   	int3
52a1bf:	cc                   	int3
52a1c0:	b8 0c 00 00 00       	mov    $0xc,%eax
52a1c5:	e8 e6 75 0a 00       	call   0x5d17b0
52a1ca:	53                   	push   %ebx
52a1cb:	55                   	push   %ebp
52a1cc:	56                   	push   %esi
52a1cd:	8b 74 24 20          	mov    0x20(%esp),%esi
52a1d1:	33 d2                	xor    %edx,%edx
52a1d3:	57                   	push   %edi
52a1d4:	8b 7c 24 20          	mov    0x20(%esp),%edi
52a1d8:	8b c2                	mov    %edx,%eax
52a1da:	8a ca                	mov    %dl,%cl
52a1dc:	c1 e8 03             	shr    $0x3,%eax
52a1df:	80 e1 07             	and    $0x7,%cl
52a1e2:	8a 04 30             	mov    (%eax,%esi,1),%al
52a1e5:	d2 e8                	shr    %cl,%al
52a1e7:	24 01                	and    $0x1,%al
52a1e9:	88 04 3a             	mov    %al,(%edx,%edi,1)
52a1ec:	42                   	inc    %edx
52a1ed:	81 fa 00 01 00 00    	cmp    $0x100,%edx
52a1f3:	7c e3                	jl     0x52a1d8
52a1f5:	ba 01 00 00 00       	mov    $0x1,%edx
52a1fa:	8b c7                	mov    %edi,%eax
52a1fc:	2b d7                	sub    %edi,%edx
52a1fe:	89 44 24 10          	mov    %eax,0x10(%esp)
52a202:	b9 00 01 00 00       	mov    $0x100,%ecx
52a207:	89 54 24 18          	mov    %edx,0x18(%esp)
52a20b:	89 4c 24 14          	mov    %ecx,0x14(%esp)
52a20f:	90                   	nop
52a210:	80 38 00             	cmpb   $0x0,(%eax)
52a213:	0f 84 87 00 00 00    	je     0x52a2a0
52a219:	be 01 00 00 00       	mov    $0x1,%esi
52a21e:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
52a221:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
52a227:	7d 6b                	jge    0x52a294
52a229:	8a 14 3b             	mov    (%ebx,%edi,1),%dl
52a22c:	84 d2                	test   %dl,%dl
52a22e:	74 5d                	je     0x52a28d
52a230:	8a 30                	mov    (%eax),%dh
52a232:	8b ce                	mov    %esi,%ecx
52a234:	0f be ea             	movsbl %dl,%ebp
52a237:	d3 e5                	shl    %cl,%ebp
52a239:	0f be ce             	movsbl %dh,%ecx
52a23c:	8d 04 29             	lea    (%ecx,%ebp,1),%eax
52a23f:	83 f8 0f             	cmp    $0xf,%eax
52a242:	7f 12                	jg     0x52a256
52a244:	8b 44 24 10          	mov    0x10(%esp),%eax
52a248:	8b ce                	mov    %esi,%ecx
52a24a:	d2 e2                	shl    %cl,%dl
52a24c:	02 d6                	add    %dh,%dl
52a24e:	88 10                	mov    %dl,(%eax)
52a250:	c6 04 3b 00          	movb   $0x0,(%ebx,%edi,1)
52a254:	eb 37                	jmp    0x52a28d
52a256:	2b cd                	sub    %ebp,%ecx
52a258:	83 f9 f1             	cmp    $0xfffffff1,%ecx
52a25b:	7c 37                	jl     0x52a294
52a25d:	8b 44 24 10          	mov    0x10(%esp),%eax
52a261:	8b ce                	mov    %esi,%ecx
52a263:	d2 e2                	shl    %cl,%dl
52a265:	2a f2                	sub    %dl,%dh
52a267:	88 30                	mov    %dh,(%eax)
52a269:	8b c3                	mov    %ebx,%eax
52a26b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
52a270:	80 3c 38 00          	cmpb   $0x0,(%eax,%edi,1)
52a274:	8d 0c 38             	lea    (%eax,%edi,1),%ecx
52a277:	74 0d                	je     0x52a286
52a279:	40                   	inc    %eax
52a27a:	c6 01 00             	movb   $0x0,(%ecx)
52a27d:	3d 00 01 00 00       	cmp    $0x100,%eax
52a282:	7c ec                	jl     0x52a270
52a284:	eb 03                	jmp    0x52a289
52a286:	c6 01 01             	movb   $0x1,(%ecx)
52a289:	8b 44 24 10          	mov    0x10(%esp),%eax
52a28d:	46                   	inc    %esi
52a28e:	43                   	inc    %ebx
52a28f:	83 fe 06             	cmp    $0x6,%esi
52a292:	7e 8d                	jle    0x52a221
52a294:	8b 44 24 10          	mov    0x10(%esp),%eax
52a298:	8b 4c 24 14          	mov    0x14(%esp),%ecx
52a29c:	8b 54 24 18          	mov    0x18(%esp),%edx
52a2a0:	40                   	inc    %eax
52a2a1:	83 e9 01             	sub    $0x1,%ecx
52a2a4:	89 44 24 10          	mov    %eax,0x10(%esp)
52a2a8:	89 4c 24 14          	mov    %ecx,0x14(%esp)
52a2ac:	0f 85 5e ff ff ff    	jne    0x52a210
52a2b2:	5f                   	pop    %edi
52a2b3:	5e                   	pop    %esi
52a2b4:	5d                   	pop    %ebp
52a2b5:	5b                   	pop    %ebx
52a2b6:	83 c4 0c             	add    $0xc,%esp
52a2b9:	c3                   	ret
52a2ba:	cc                   	int3
52a2bb:	cc                   	int3
52a2bc:	cc                   	int3
52a2bd:	cc                   	int3
52a2be:	cc                   	int3
52a2bf:	cc                   	int3
52a2c0:	b8 84 00 00 00       	mov    $0x84,%eax
52a2c5:	e8 e6 74 0a 00       	call   0x5d17b0
52a2ca:	a1 c0 14 69 00       	mov    0x6914c0,%eax
52a2cf:	33 c4                	xor    %esp,%eax
52a2d1:	89 84 24 80 00 00 00 	mov    %eax,0x80(%esp)
52a2d8:	53                   	push   %ebx
52a2d9:	55                   	push   %ebp
52a2da:	56                   	push   %esi
52a2db:	57                   	push   %edi
52a2dc:	8a 8c 24 a0 00 00 00 	mov    0xa0(%esp),%cl
52a2e3:	0f 57 c0             	xorps  %xmm0,%xmm0
52a2e6:	8b 9c 24 98 00 00 00 	mov    0x98(%esp),%ebx
52a2ed:	0f be d1             	movsbl %cl,%edx
52a2f0:	c1 ea 1f             	shr    $0x1f,%edx
52a2f3:	8a c2                	mov    %dl,%al
52a2f5:	89 5c 24 10          	mov    %ebx,0x10(%esp)
52a2f9:	0f 11 03             	movups %xmm0,(%ebx)
52a2fc:	f6 d8                	neg    %al
52a2fe:	89 54 24 14          	mov    %edx,0x14(%esp)
52a302:	0f 11 43 10          	movups %xmm0,0x10(%ebx)
52a306:	22 c1                	and    %cl,%al
52a308:	66 0f d6 43 20       	movq   %xmm0,0x20(%ebx)
52a30d:	02 c0                	add    %al,%al
52a30f:	c7 03 01 00 00 00    	movl   $0x1,(%ebx)
52a315:	2a c8                	sub    %al,%cl
52a317:	0f 11 43 28          	movups %xmm0,0x28(%ebx)
52a31b:	0f 11 43 38          	movups %xmm0,0x38(%ebx)
52a31f:	66 0f d6 43 48       	movq   %xmm0,0x48(%ebx)
52a324:	c7 43 28 01 00 00 00 	movl   $0x1,0x28(%ebx)
52a32b:	0f 11 43 50          	movups %xmm0,0x50(%ebx)
52a32f:	0f b6 e9             	movzbl %cl,%ebp
52a332:	0f 11 43 60          	movups %xmm0,0x60(%ebx)
52a336:	8b fd                	mov    %ebp,%edi
52a338:	66 0f d6 43 70       	movq   %xmm0,0x70(%ebx)
52a33d:	83 f7 01             	xor    $0x1,%edi
52a340:	69 9c 24 9c 00 00 00 	imul   $0x3c0,0x9c(%esp),%ebx
52a347:	c0 03 00 00
52a34b:	4f                   	dec    %edi
52a34c:	c1 ef 1f             	shr    $0x1f,%edi
52a34f:	57                   	push   %edi
52a350:	8d b3 b8 12 64 00    	lea    0x6412b8(%ebx),%esi
52a356:	56                   	push   %esi
52a357:	ff 74 24 18          	push   0x18(%esp)
52a35b:	e8 40 74 ff ff       	call   0x5217a0
52a360:	57                   	push   %edi
52a361:	8d 46 28             	lea    0x28(%esi),%eax
52a364:	50                   	push   %eax
52a365:	8b 44 24 24          	mov    0x24(%esp),%eax
52a369:	83 c0 28             	add    $0x28,%eax
52a36c:	50                   	push   %eax
52a36d:	e8 2e 74 ff ff       	call   0x5217a0
52a372:	57                   	push   %edi
52a373:	8d 46 50             	lea    0x50(%esi),%eax
52a376:	50                   	push   %eax
52a377:	8b 44 24 30          	mov    0x30(%esp),%eax
52a37b:	83 c0 50             	add    $0x50,%eax
52a37e:	50                   	push   %eax
52a37f:	e8 1c 74 ff ff       	call   0x5217a0
52a384:	8b fd                	mov    %ebp,%edi
52a386:	8d b3 30 13 64 00    	lea    0x641330(%ebx),%esi
52a38c:	83 f7 02             	xor    $0x2,%edi
52a38f:	4f                   	dec    %edi
52a390:	c1 ef 1f             	shr    $0x1f,%edi
52a393:	57                   	push   %edi
52a394:	56                   	push   %esi
52a395:	ff 74 24 3c          	push   0x3c(%esp)
52a399:	e8 02 74 ff ff       	call   0x5217a0
52a39e:	57                   	push   %edi
52a39f:	8d 46 28             	lea    0x28(%esi),%eax
52a3a2:	50                   	push   %eax
52a3a3:	8b 44 24 48          	mov    0x48(%esp),%eax
52a3a7:	83 c0 28             	add    $0x28,%eax
52a3aa:	50                   	push   %eax
52a3ab:	e8 f0 73 ff ff       	call   0x5217a0
52a3b0:	57                   	push   %edi
52a3b1:	8d 46 50             	lea    0x50(%esi),%eax
52a3b4:	50                   	push   %eax
52a3b5:	8b 44 24 54          	mov    0x54(%esp),%eax
52a3b9:	83 c0 50             	add    $0x50,%eax
52a3bc:	50                   	push   %eax
52a3bd:	e8 de 73 ff ff       	call   0x5217a0
52a3c2:	8b fd                	mov    %ebp,%edi
52a3c4:	8d b3 a8 13 64 00    	lea    0x6413a8(%ebx),%esi
52a3ca:	83 f7 03             	xor    $0x3,%edi
52a3cd:	83 c4 48             	add    $0x48,%esp
52a3d0:	4f                   	dec    %edi
52a3d1:	c1 ef 1f             	shr    $0x1f,%edi
52a3d4:	57                   	push   %edi
52a3d5:	56                   	push   %esi
52a3d6:	ff 74 24 18          	push   0x18(%esp)
52a3da:	e8 c1 73 ff ff       	call   0x5217a0
52a3df:	57                   	push   %edi
52a3e0:	8d 46 28             	lea    0x28(%esi),%eax
52a3e3:	50                   	push   %eax
52a3e4:	8b 44 24 24          	mov    0x24(%esp),%eax
52a3e8:	83 c0 28             	add    $0x28,%eax
52a3eb:	50                   	push   %eax
52a3ec:	e8 af 73 ff ff       	call   0x5217a0
52a3f1:	57                   	push   %edi
52a3f2:	8d 46 50             	lea    0x50(%esi),%eax
52a3f5:	50                   	push   %eax
52a3f6:	8b 44 24 30          	mov    0x30(%esp),%eax
52a3fa:	83 c0 50             	add    $0x50,%eax
52a3fd:	50                   	push   %eax
52a3fe:	e8 9d 73 ff ff       	call   0x5217a0
52a403:	8b fd                	mov    %ebp,%edi
52a405:	8d b3 20 14 64 00    	lea    0x641420(%ebx),%esi
52a40b:	83 f7 04             	xor    $0x4,%edi
52a40e:	4f                   	dec    %edi
52a40f:	c1 ef 1f             	shr    $0x1f,%edi
52a412:	57                   	push   %edi
52a413:	56                   	push   %esi
52a414:	ff 74 24 3c          	push   0x3c(%esp)
52a418:	e8 83 73 ff ff       	call   0x5217a0
52a41d:	57                   	push   %edi
52a41e:	8d 46 28             	lea    0x28(%esi),%eax
52a421:	50                   	push   %eax
52a422:	8b 44 24 48          	mov    0x48(%esp),%eax
52a426:	83 c0 28             	add    $0x28,%eax
52a429:	50                   	push   %eax
52a42a:	e8 71 73 ff ff       	call   0x5217a0
52a42f:	57                   	push   %edi
52a430:	8d 46 50             	lea    0x50(%esi),%eax
52a433:	50                   	push   %eax
52a434:	8b 44 24 54          	mov    0x54(%esp),%eax
52a438:	83 c0 50             	add    $0x50,%eax
52a43b:	50                   	push   %eax
52a43c:	e8 5f 73 ff ff       	call   0x5217a0
52a441:	8b fd                	mov    %ebp,%edi
52a443:	8d b3 98 14 64 00    	lea    0x641498(%ebx),%esi
52a449:	83 c4 48             	add    $0x48,%esp
52a44c:	83 f7 05             	xor    $0x5,%edi
52a44f:	4f                   	dec    %edi
52a450:	c1 ef 1f             	shr    $0x1f,%edi
52a453:	57                   	push   %edi
52a454:	56                   	push   %esi
52a455:	ff 74 24 18          	push   0x18(%esp)
52a459:	e8 42 73 ff ff       	call   0x5217a0
52a45e:	57                   	push   %edi
52a45f:	8d 46 28             	lea    0x28(%esi),%eax
52a462:	50                   	push   %eax
52a463:	8b 44 24 24          	mov    0x24(%esp),%eax
52a467:	83 c0 28             	add    $0x28,%eax
52a46a:	50                   	push   %eax
52a46b:	e8 30 73 ff ff       	call   0x5217a0
52a470:	57                   	push   %edi
52a471:	8d 46 50             	lea    0x50(%esi),%eax
52a474:	50                   	push   %eax
52a475:	8b 44 24 30          	mov    0x30(%esp),%eax
52a479:	83 c0 50             	add    $0x50,%eax
52a47c:	50                   	push   %eax