4c507f:	89 45 f4             	mov    %eax,-0xc(%ebp)
4c5082:	89 53 10             	mov    %edx,0x10(%ebx)
4c5085:	78 5d                	js     0x4c50e4
4c5087:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4c508a:	53                   	push   %ebx
4c508b:	57                   	push   %edi
4c508c:	e8 cf 36 ff ff       	call   0x4b8760
4c5091:	8b f8                	mov    %eax,%edi
4c5093:	85 ff                	test   %edi,%edi
4c5095:	74 4d                	je     0x4c50e4
4c5097:	ff 43 44             	incl   0x44(%ebx)
4c509a:	83 7b 3c 00          	cmpl   $0x0,0x3c(%ebx)
4c509e:	75 44                	jne    0x4c50e4
4c50a0:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c50a3:	2b 45 f0             	sub    -0x10(%ebp),%eax
4c50a6:	01 43 10             	add    %eax,0x10(%ebx)
4c50a9:	b8 00 00 00 00       	mov    $0x0,%eax
4c50ae:	0f 48 43 10          	cmovs  0x10(%ebx),%eax
4c50b2:	03 43 04             	add    0x4(%ebx),%eax
4c50b5:	89 03                	mov    %eax,(%ebx)
4c50b7:	e9 98 fe ff ff       	jmp    0x4c4f54
4c50bc:	80 fa 10             	cmp    $0x10,%dl
4c50bf:	75 58                	jne    0x4c5119
4c50c1:	8d 45 d0             	lea    -0x30(%ebp),%eax
4c50c4:	83 ce 04             	or     $0x4,%esi
4c50c7:	50                   	push   %eax
4c50c8:	57                   	push   %edi
4c50c9:	e8 b2 ba f8 ff       	call   0x450b80
4c50ce:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c50d1:	8b f8                	mov    %eax,%edi
4c50d3:	8b 45 d0             	mov    -0x30(%ebp),%eax
4c50d6:	83 c4 08             	add    $0x8,%esp
4c50d9:	89 41 18             	mov    %eax,0x18(%ecx)
4c50dc:	85 ff                	test   %edi,%edi
4c50de:	0f 85 70 fe ff ff    	jne    0x4c4f54
4c50e4:	33 ff                	xor    %edi,%edi
4c50e6:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4c50e9:	8b c7                	mov    %edi,%eax
4c50eb:	5f                   	pop    %edi
4c50ec:	09 73 08             	or     %esi,0x8(%ebx)
4c50ef:	5e                   	pop    %esi
4c50f0:	5b                   	pop    %ebx
4c50f1:	8b e5                	mov    %ebp,%esp
4c50f3:	5d                   	pop    %ebp
4c50f4:	c2 08 00             	ret    $0x8
4c50f7:	80 fa 08             	cmp    $0x8,%dl
4c50fa:	75 1d                	jne    0x4c5119
4c50fc:	8d 45 c8             	lea    -0x38(%ebp),%eax
4c50ff:	83 ce 02             	or     $0x2,%esi
4c5102:	50                   	push   %eax
4c5103:	57                   	push   %edi
4c5104:	e8 77 ba f8 ff       	call   0x450b80
4c5109:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c510c:	8b f8                	mov    %eax,%edi
4c510e:	8b 45 c8             	mov    -0x38(%ebp),%eax
4c5111:	83 c4 08             	add    $0x8,%esp
4c5114:	89 41 14             	mov    %eax,0x14(%ecx)
4c5117:	eb c3                	jmp    0x4c50dc
4c5119:	8b c2                	mov    %edx,%eax
4c511b:	24 07                	and    $0x7,%al
4c511d:	3c 04                	cmp    $0x4,%al
4c511f:	74 50                	je     0x4c5171
4c5121:	85 d2                	test   %edx,%edx
4c5123:	74 4c                	je     0x4c5171
4c5125:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c5128:	83 c1 04             	add    $0x4,%ecx
4c512b:	f6 01 01             	testb  $0x1,(%ecx)
4c512e:	74 0a                	je     0x4c513a
4c5130:	8b 01                	mov    (%ecx),%eax
4c5132:	83 e0 fc             	and    $0xfffffffc,%eax
4c5135:	83 c0 04             	add    $0x4,%eax
4c5138:	eb 08                	jmp    0x4c5142
4c513a:	e8 f1 ba f8 ff       	call   0x450c30
4c513f:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c5142:	53                   	push   %ebx
4c5143:	57                   	push   %edi
4c5144:	50                   	push   %eax
4c5145:	6a 00                	push   $0x0
4c5147:	52                   	push   %edx
4c5148:	e8 63 be f9 ff       	call   0x460fb0
4c514d:	83 c4 14             	add    $0x14,%esp
4c5150:	8b f8                	mov    %eax,%edi
4c5152:	eb 88                	jmp    0x4c50dc
4c5154:	85 c0                	test   %eax,%eax
4c5156:	7e 8e                	jle    0x4c50e6
4c5158:	33 c0                	xor    %eax,%eax
4c515a:	39 43 08             	cmp    %eax,0x8(%ebx)
4c515d:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4c5160:	0f 44 f8             	cmove  %eax,%edi
4c5163:	8b c7                	mov    %edi,%eax
4c5165:	5f                   	pop    %edi
4c5166:	09 73 08             	or     %esi,0x8(%ebx)
4c5169:	5e                   	pop    %esi
4c516a:	5b                   	pop    %ebx
4c516b:	8b e5                	mov    %ebp,%esp
4c516d:	5d                   	pop    %ebp
4c516e:	c2 08 00             	ret    $0x8
4c5171:	8d 42 ff             	lea    -0x1(%edx),%eax
4c5174:	89 43 3c             	mov    %eax,0x3c(%ebx)
4c5177:	8b c7                	mov    %edi,%eax
4c5179:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4c517c:	5f                   	pop    %edi
4c517d:	09 73 08             	or     %esi,0x8(%ebx)
4c5180:	5e                   	pop    %esi
4c5181:	5b                   	pop    %ebx
4c5182:	8b e5                	mov    %ebp,%esp
4c5184:	5d                   	pop    %ebp
4c5185:	c2 08 00             	ret    $0x8
4c5188:	cc                   	int3
4c5189:	cc                   	int3
4c518a:	cc                   	int3
4c518b:	cc                   	int3
4c518c:	cc                   	int3
4c518d:	cc                   	int3
4c518e:	cc                   	int3
4c518f:	cc                   	int3
4c5190:	55                   	push   %ebp
4c5191:	8b ec                	mov    %esp,%ebp
4c5193:	83 ec 0c             	sub    $0xc,%esp
4c5196:	8b 45 08             	mov    0x8(%ebp),%eax
4c5199:	53                   	push   %ebx
4c519a:	8b d9                	mov    %ecx,%ebx
4c519c:	56                   	push   %esi
4c519d:	57                   	push   %edi
4c519e:	8b 7d 0c             	mov    0xc(%ebp),%edi
4c51a1:	8b 4b 08             	mov    0x8(%ebx),%ecx
4c51a4:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4c51a7:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4c51aa:	f6 c1 02             	test   $0x2,%cl
4c51ad:	74 28                	je     0x4c51d7
4c51af:	3b 07                	cmp    (%edi),%eax
4c51b1:	72 08                	jb     0x4c51bb
4c51b3:	50                   	push   %eax
4c51b4:	8b cf                	mov    %edi,%ecx
4c51b6:	e8 b5 43 f9 ff       	call   0x459570
4c51bb:	8b 73 14             	mov    0x14(%ebx),%esi
4c51be:	50                   	push   %eax
4c51bf:	6a 08                	push   $0x8
4c51c1:	e8 fa b8 f8 ff       	call   0x450ac0
4c51c6:	50                   	push   %eax
4c51c7:	8b c6                	mov    %esi,%eax
4c51c9:	99                   	cltd
4c51ca:	52                   	push   %edx
4c51cb:	50                   	push   %eax
4c51cc:	e8 8f 5f fa ff       	call   0x46b160
4c51d1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c51d4:	83 c4 14             	add    $0x14,%esp
4c51d7:	f6 c1 04             	test   $0x4,%cl
4c51da:	74 28                	je     0x4c5204
4c51dc:	3b 07                	cmp    (%edi),%eax
4c51de:	72 08                	jb     0x4c51e8
4c51e0:	50                   	push   %eax
4c51e1:	8b cf                	mov    %edi,%ecx
4c51e3:	e8 88 43 f9 ff       	call   0x459570
4c51e8:	8b 73 18             	mov    0x18(%ebx),%esi
4c51eb:	50                   	push   %eax
4c51ec:	6a 10                	push   $0x10
4c51ee:	e8 cd b8 f8 ff       	call   0x450ac0
4c51f3:	50                   	push   %eax
4c51f4:	8b c6                	mov    %esi,%eax
4c51f6:	99                   	cltd
4c51f7:	52                   	push   %edx
4c51f8:	50                   	push   %eax
4c51f9:	e8 62 5f fa ff       	call   0x46b160
4c51fe:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c5201:	83 c4 14             	add    $0x14,%esp
4c5204:	f6 c1 01             	test   $0x1,%cl
4c5207:	0f 84 ab 00 00 00    	je     0x4c52b8
4c520d:	3b 07                	cmp    (%edi),%eax
4c520f:	72 08                	jb     0x4c5219
4c5211:	50                   	push   %eax
4c5212:	8b cf                	mov    %edi,%ecx
4c5214:	e8 57 43 f9 ff       	call   0x459570
4c5219:	8b 5b 10             	mov    0x10(%ebx),%ebx
4c521c:	50                   	push   %eax
4c521d:	6a 1a                	push   $0x1a
4c521f:	e8 9c b8 f8 ff       	call   0x450ac0
4c5224:	8b 4b 24             	mov    0x24(%ebx),%ecx
4c5227:	50                   	push   %eax
4c5228:	51                   	push   %ecx
4c5229:	e8 92 b8 f8 ff       	call   0x450ac0
4c522e:	8b 4b 18             	mov    0x18(%ebx),%ecx
4c5231:	33 f6                	xor    %esi,%esi
4c5233:	83 c4 10             	add    $0x10,%esp
4c5236:	89 75 fc             	mov    %esi,-0x4(%ebp)
4c5239:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c523c:	85 c9                	test   %ecx,%ecx
4c523e:	74 40                	je     0x4c5280
4c5240:	3b 07                	cmp    (%edi),%eax
4c5242:	72 08                	jb     0x4c524c
4c5244:	50                   	push   %eax
4c5245:	8b cf                	mov    %edi,%ecx
4c5247:	e8 24 43 f9 ff       	call   0x459570
4c524c:	8b 4b 20             	mov    0x20(%ebx),%ecx
4c524f:	50                   	push   %eax
4c5250:	68 3a 1f 00 00       	push   $0x1f3a
4c5255:	8b 74 b1 04          	mov    0x4(%ecx,%esi,4),%esi
4c5259:	e8 62 b8 f8 ff       	call   0x450ac0
4c525e:	8b 56 0c             	mov    0xc(%esi),%edx
4c5261:	50                   	push   %eax
4c5262:	52                   	push   %edx
4c5263:	e8 58 b8 f8 ff       	call   0x450ac0
4c5268:	83 c4 10             	add    $0x10,%esp
4c526b:	8b ce                	mov    %esi,%ecx
4c526d:	57                   	push   %edi
4c526e:	50                   	push   %eax
4c526f:	e8 fc c5 ff ff       	call   0x4c1870
4c5274:	8b 75 fc             	mov    -0x4(%ebp),%esi
4c5277:	46                   	inc    %esi
4c5278:	89 75 fc             	mov    %esi,-0x4(%ebp)
4c527b:	3b 75 f8             	cmp    -0x8(%ebp),%esi
4c527e:	72 c0                	jb     0x4c5240
4c5280:	66 83 7b 0e 00       	cmpw   $0x0,0xe(%ebx)
4c5285:	8d 4b 08             	lea    0x8(%ebx),%ecx
4c5288:	74 11                	je     0x4c529b
4c528a:	57                   	push   %edi
4c528b:	50                   	push   %eax
4c528c:	68 00 00 00 20       	push   $0x20000000
4c5291:	68 e8 03 00 00       	push   $0x3e8
4c5296:	e8 f5 58 fe ff       	call   0x4aab90
4c529b:	f6 43 04 01          	testb  $0x1,0x4(%ebx)
4c529f:	74 14                	je     0x4c52b5
4c52a1:	8b 4b 04             	mov    0x4(%ebx),%ecx
4c52a4:	83 e1 fc             	and    $0xfffffffc,%ecx
4c52a7:	57                   	push   %edi
4c52a8:	83 c1 04             	add    $0x4,%ecx
4c52ab:	50                   	push   %eax
4c52ac:	51                   	push   %ecx
4c52ad:	e8 8e d2 fa ff       	call   0x472540
4c52b2:	83 c4 0c             	add    $0xc,%esp
4c52b5:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4c52b8:	f6 43 04 01          	testb  $0x1,0x4(%ebx)
4c52bc:	74 14                	je     0x4c52d2
4c52be:	8b 4b 04             	mov    0x4(%ebx),%ecx
4c52c1:	83 e1 fc             	and    $0xfffffffc,%ecx
4c52c4:	57                   	push   %edi
4c52c5:	83 c1 04             	add    $0x4,%ecx
4c52c8:	50                   	push   %eax
4c52c9:	51                   	push   %ecx
4c52ca:	e8 71 d2 fa ff       	call   0x472540
4c52cf:	83 c4 0c             	add    $0xc,%esp
4c52d2:	5f                   	pop    %edi
4c52d3:	5e                   	pop    %esi
4c52d4:	5b                   	pop    %ebx
4c52d5:	8b e5                	mov    %ebp,%esp
4c52d7:	5d                   	pop    %ebp
4c52d8:	c2 08 00             	ret    $0x8
4c52db:	cc                   	int3
4c52dc:	cc                   	int3
4c52dd:	cc                   	int3
4c52de:	cc                   	int3
4c52df:	cc                   	int3
4c52e0:	55                   	push   %ebp
4c52e1:	8b ec                	mov    %esp,%ebp
4c52e3:	6a 00                	push   $0x0
4c52e5:	68 50 d6 68 00       	push   $0x68d650
4c52ea:	e8 91 e0 f9 ff       	call   0x463380
4c52ef:	a1 7c d6 68 00       	mov    0x68d67c,%eax
4c52f4:	83 c4 08             	add    $0x8,%esp
4c52f7:	8b 48 10             	mov    0x10(%eax),%ecx
4c52fa:	8b 50 14             	mov    0x14(%eax),%edx
4c52fd:	8b 45 08             	mov    0x8(%ebp),%eax
4c5300:	89 08                	mov    %ecx,(%eax)
4c5302:	89 50 04             	mov    %edx,0x4(%eax)
4c5305:	5d                   	pop    %ebp
4c5306:	c2 04 00             	ret    $0x4
4c5309:	cc                   	int3
4c530a:	cc                   	int3
4c530b:	cc                   	int3
4c530c:	cc                   	int3
4c530d:	cc                   	int3
4c530e:	cc                   	int3
4c530f:	cc                   	int3
4c5310:	55                   	push   %ebp
4c5311:	8b ec                	mov    %esp,%ebp
4c5313:	56                   	push   %esi
4c5314:	8b f1                	mov    %ecx,%esi
4c5316:	e8 25 4d 00 00       	call   0x4ca040
4c531b:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
4c531f:	74 0b                	je     0x4c532c
4c5321:	6a 1c                	push   $0x1c
4c5323:	56                   	push   %esi
4c5324:	e8 2c bf 10 00       	call   0x5d1255
4c5329:	83 c4 08             	add    $0x8,%esp
4c532c:	8b c6                	mov    %esi,%eax
4c532e:	5e                   	pop    %esi
4c532f:	5d                   	pop    %ebp
4c5330:	c2 04 00             	ret    $0x4
4c5333:	cc                   	int3
4c5334:	cc                   	int3
4c5335:	cc                   	int3
4c5336:	cc                   	int3
4c5337:	cc                   	int3
4c5338:	cc                   	int3
4c5339:	cc                   	int3
4c533a:	cc                   	int3
4c533b:	cc                   	int3
4c533c:	cc                   	int3
4c533d:	cc                   	int3
4c533e:	cc                   	int3
4c533f:	cc                   	int3
4c5340:	6a 00                	push   $0x0
4c5342:	e8 d9 1b 00 00       	call   0x4c6f20
4c5347:	83 c4 04             	add    $0x4,%esp
4c534a:	c3                   	ret
4c534b:	cc                   	int3
4c534c:	cc                   	int3
4c534d:	cc                   	int3
4c534e:	cc                   	int3
4c534f:	cc                   	int3
4c5350:	55                   	push   %ebp
4c5351:	8b ec                	mov    %esp,%ebp
4c5353:	ff 75 08             	push   0x8(%ebp)
4c5356:	e8 c5 1b 00 00       	call   0x4c6f20
4c535b:	83 c4 04             	add    $0x4,%esp
4c535e:	5d                   	pop    %ebp
4c535f:	c2 04 00             	ret    $0x4
4c5362:	cc                   	int3
4c5363:	cc                   	int3
4c5364:	cc                   	int3
4c5365:	cc                   	int3
4c5366:	cc                   	int3
4c5367:	cc                   	int3
4c5368:	cc                   	int3
4c5369:	cc                   	int3
4c536a:	cc                   	int3
4c536b:	cc                   	int3
4c536c:	cc                   	int3
4c536d:	cc                   	int3
4c536e:	cc                   	int3
4c536f:	cc                   	int3
4c5370:	55                   	push   %ebp
4c5371:	8b ec                	mov    %esp,%ebp
4c5373:	83 ec 08             	sub    $0x8,%esp
4c5376:	53                   	push   %ebx
4c5377:	8b 5d 08             	mov    0x8(%ebp),%ebx
4c537a:	57                   	push   %edi
4c537b:	8b f9                	mov    %ecx,%edi
4c537d:	3b df                	cmp    %edi,%ebx
4c537f:	0f 84 a1 00 00 00    	je     0x4c5426
4c5385:	f6 47 08 03          	testb  $0x3,0x8(%edi)
4c5389:	74 08                	je     0x4c5393
4c538b:	0f 57 c0             	xorps  %xmm0,%xmm0
4c538e:	66 0f d6 47 10       	movq   %xmm0,0x10(%edi)
4c5393:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
4c539a:	f6 47 04 01          	testb  $0x1,0x4(%edi)
4c539e:	74 08                	je     0x4c53a8
4c53a0:	8d 4f 04             	lea    0x4(%edi),%ecx
4c53a3:	e8 08 b3 f8 ff       	call   0x4506b0
4c53a8:	85 db                	test   %ebx,%ebx