4bc28e:	8d 4e 08             	lea    0x8(%esi),%ecx
4bc291:	e8 7a e0 fe ff       	call   0x4aa310
4bc296:	84 c0                	test   %al,%al
4bc298:	74 10                	je     0x4bc2aa
4bc29a:	8d 46 1c             	lea    0x1c(%esi),%eax
4bc29d:	50                   	push   %eax
4bc29e:	e8 ed aa 00 00       	call   0x4c6d90
4bc2a3:	83 c4 04             	add    $0x4,%esp
4bc2a6:	84 c0                	test   %al,%al
4bc2a8:	75 04                	jne    0x4bc2ae
4bc2aa:	32 c0                	xor    %al,%al
4bc2ac:	5e                   	pop    %esi
4bc2ad:	c3                   	ret
4bc2ae:	b0 01                	mov    $0x1,%al
4bc2b0:	5e                   	pop    %esi
4bc2b1:	c3                   	ret
4bc2b2:	cc                   	int3
4bc2b3:	cc                   	int3
4bc2b4:	cc                   	int3
4bc2b5:	cc                   	int3
4bc2b6:	cc                   	int3
4bc2b7:	cc                   	int3
4bc2b8:	cc                   	int3
4bc2b9:	cc                   	int3
4bc2ba:	cc                   	int3
4bc2bb:	cc                   	int3
4bc2bc:	cc                   	int3
4bc2bd:	cc                   	int3
4bc2be:	cc                   	int3
4bc2bf:	cc                   	int3
4bc2c0:	55                   	push   %ebp
4bc2c1:	8b ec                	mov    %esp,%ebp
4bc2c3:	83 ec 0c             	sub    $0xc,%esp
4bc2c6:	53                   	push   %ebx
4bc2c7:	56                   	push   %esi
4bc2c8:	57                   	push   %edi
4bc2c9:	8b f9                	mov    %ecx,%edi
4bc2cb:	33 f6                	xor    %esi,%esi
4bc2cd:	8b 5f 08             	mov    0x8(%edi),%ebx
4bc2d0:	f6 c3 3f             	test   $0x3f,%bl
4bc2d3:	0f 84 9b 00 00 00    	je     0x4bc374
4bc2d9:	f6 c3 01             	test   $0x1,%bl
4bc2dc:	74 22                	je     0x4bc300
4bc2de:	8b 47 10             	mov    0x10(%edi),%eax
4bc2e1:	83 e0 fe             	and    $0xfffffffe,%eax
4bc2e4:	8b 48 10             	mov    0x10(%eax),%ecx
4bc2e7:	8b c1                	mov    %ecx,%eax
4bc2e9:	83 c8 01             	or     $0x1,%eax
4bc2ec:	0f bd c0             	bsr    %eax,%eax
4bc2ef:	8d 71 01             	lea    0x1(%ecx),%esi
4bc2f2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4bc2f5:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4bc2f8:	83 c0 49             	add    $0x49,%eax
4bc2fb:	c1 e8 06             	shr    $0x6,%eax
4bc2fe:	03 f0                	add    %eax,%esi
4bc300:	f6 c3 02             	test   $0x2,%bl
4bc303:	74 22                	je     0x4bc327
4bc305:	8b 47 14             	mov    0x14(%edi),%eax
4bc308:	83 e0 fe             	and    $0xfffffffe,%eax
4bc30b:	8b 48 10             	mov    0x10(%eax),%ecx
4bc30e:	8b c1                	mov    %ecx,%eax
4bc310:	83 c8 01             	or     $0x1,%eax
4bc313:	0f bd c0             	bsr    %eax,%eax
4bc316:	89 45 f8             	mov    %eax,-0x8(%ebp)
4bc319:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4bc31c:	83 c0 49             	add    $0x49,%eax
4bc31f:	c1 e8 06             	shr    $0x6,%eax
4bc322:	40                   	inc    %eax
4bc323:	03 c1                	add    %ecx,%eax
4bc325:	03 f0                	add    %eax,%esi
4bc327:	f6 c3 04             	test   $0x4,%bl
4bc32a:	74 22                	je     0x4bc34e
4bc32c:	8b 47 18             	mov    0x18(%edi),%eax
4bc32f:	83 e0 fe             	and    $0xfffffffe,%eax
4bc332:	8b 48 10             	mov    0x10(%eax),%ecx
4bc335:	8b c1                	mov    %ecx,%eax
4bc337:	83 c8 01             	or     $0x1,%eax
4bc33a:	0f bd c0             	bsr    %eax,%eax
4bc33d:	89 45 f4             	mov    %eax,-0xc(%ebp)
4bc340:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4bc343:	83 c0 49             	add    $0x49,%eax
4bc346:	c1 e8 06             	shr    $0x6,%eax
4bc349:	40                   	inc    %eax
4bc34a:	03 c1                	add    %ecx,%eax
4bc34c:	03 f0                	add    %eax,%esi
4bc34e:	f6 c3 08             	test   $0x8,%bl
4bc351:	74 0e                	je     0x4bc361
4bc353:	ff 77 1c             	push   0x1c(%edi)
4bc356:	e8 35 c7 00 00       	call   0x4c8a90
4bc35b:	40                   	inc    %eax
4bc35c:	83 c4 04             	add    $0x4,%esp
4bc35f:	03 f0                	add    %eax,%esi
4bc361:	f6 c3 10             	test   $0x10,%bl
4bc364:	8d 46 02             	lea    0x2(%esi),%eax
4bc367:	0f 44 c6             	cmove  %esi,%eax
4bc36a:	8b f0                	mov    %eax,%esi
4bc36c:	f6 c3 20             	test   $0x20,%bl
4bc36f:	74 03                	je     0x4bc374
4bc371:	83 c6 02             	add    $0x2,%esi
4bc374:	8d 47 04             	lea    0x4(%edi),%eax
4bc377:	83 c7 0c             	add    $0xc,%edi
4bc37a:	f6 00 01             	testb  $0x1,(%eax)
4bc37d:	74 12                	je     0x4bc391
4bc37f:	57                   	push   %edi
4bc380:	56                   	push   %esi
4bc381:	50                   	push   %eax
4bc382:	e8 29 31 fb ff       	call   0x46f4b0
4bc387:	83 c4 0c             	add    $0xc,%esp
4bc38a:	5f                   	pop    %edi
4bc38b:	5e                   	pop    %esi
4bc38c:	5b                   	pop    %ebx
4bc38d:	8b e5                	mov    %ebp,%esp
4bc38f:	5d                   	pop    %ebp
4bc390:	c3                   	ret
4bc391:	89 37                	mov    %esi,(%edi)
4bc393:	8b c6                	mov    %esi,%eax
4bc395:	5f                   	pop    %edi
4bc396:	5e                   	pop    %esi
4bc397:	5b                   	pop    %ebx
4bc398:	8b e5                	mov    %ebp,%esp
4bc39a:	5d                   	pop    %ebp
4bc39b:	c3                   	ret
4bc39c:	cc                   	int3
4bc39d:	cc                   	int3
4bc39e:	cc                   	int3
4bc39f:	cc                   	int3
4bc3a0:	55                   	push   %ebp
4bc3a1:	8b ec                	mov    %esp,%ebp
4bc3a3:	83 ec 48             	sub    $0x48,%esp
4bc3a6:	53                   	push   %ebx
4bc3a7:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4bc3aa:	56                   	push   %esi
4bc3ab:	57                   	push   %edi
4bc3ac:	8b 7d 08             	mov    0x8(%ebp),%edi
4bc3af:	33 f6                	xor    %esi,%esi
4bc3b1:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4bc3b4:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4bc3b7:	3b 3b                	cmp    (%ebx),%edi
4bc3b9:	72 2a                	jb     0x4bc3e5
4bc3bb:	8b c7                	mov    %edi,%eax
4bc3bd:	2b 43 04             	sub    0x4(%ebx),%eax
4bc3c0:	3b 43 10             	cmp    0x10(%ebx),%eax
4bc3c3:	0f 84 0e 03 00 00    	je     0x4bc6d7
4bc3c9:	ff 73 48             	push   0x48(%ebx)
4bc3cc:	8b cb                	mov    %ebx,%ecx
4bc3ce:	50                   	push   %eax
4bc3cf:	8d 45 d8             	lea    -0x28(%ebp),%eax
4bc3d2:	50                   	push   %eax
4bc3d3:	e8 58 2b fa ff       	call   0x45ef30
4bc3d8:	80 7d dc 00          	cmpb   $0x0,-0x24(%ebp)
4bc3dc:	8b 7d d8             	mov    -0x28(%ebp),%edi
4bc3df:	0f 85 af 00 00 00    	jne    0x4bc494
4bc3e5:	0f b6 1f             	movzbl (%edi),%ebx
4bc3e8:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
4bc3ee:	73 03                	jae    0x4bc3f3
4bc3f0:	47                   	inc    %edi
4bc3f1:	eb 2f                	jmp    0x4bc422
4bc3f3:	0f b6 4f 01          	movzbl 0x1(%edi),%ecx
4bc3f7:	83 c3 80             	add    $0xffffff80,%ebx
4bc3fa:	8b c1                	mov    %ecx,%eax
4bc3fc:	c1 e0 07             	shl    $0x7,%eax
4bc3ff:	03 d8                	add    %eax,%ebx
4bc401:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
4bc407:	73 05                	jae    0x4bc40e
4bc409:	83 c7 02             	add    $0x2,%edi
4bc40c:	eb 14                	jmp    0x4bc422
4bc40e:	53                   	push   %ebx
4bc40f:	8d 45 d0             	lea    -0x30(%ebp),%eax
4bc412:	57                   	push   %edi
4bc413:	50                   	push   %eax
4bc414:	e8 c7 35 fa ff       	call   0x45f9e0
4bc419:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
4bc41c:	83 c4 0c             	add    $0xc,%esp
4bc41f:	8b 7d d0             	mov    -0x30(%ebp),%edi
4bc422:	85 ff                	test   %edi,%edi
4bc424:	74 6c                	je     0x4bc492
4bc426:	8b c3                	mov    %ebx,%eax
4bc428:	c1 e8 03             	shr    $0x3,%eax
4bc42b:	48                   	dec    %eax
4bc42c:	83 f8 05             	cmp    $0x5,%eax
4bc42f:	0f 87 59 02 00 00    	ja     0x4bc68e
4bc435:	ff 24 85 14 c7 4b 00 	jmp    *0x4bc714(,%eax,4)
4bc43c:	80 fb 0a             	cmp    $0xa,%bl
4bc43f:	0f 85 49 02 00 00    	jne    0x4bc68e
4bc445:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4bc448:	c6 45 f0 00          	movb   $0x0,-0x10(%ebp)
4bc44c:	83 49 08 01          	orl    $0x1,0x8(%ecx)
4bc450:	8b 51 04             	mov    0x4(%ecx),%edx
4bc453:	f6 c2 03             	test   $0x3,%dl
4bc456:	75 05                	jne    0x4bc45d
4bc458:	83 e2 fc             	and    $0xfffffffc,%edx
4bc45b:	eb 11                	jmp    0x4bc46e
4bc45d:	8b c2                	mov    %edx,%eax
4bc45f:	d1 e8                	shr    $1,%eax
4bc461:	a8 01                	test   $0x1,%al
4bc463:	74 04                	je     0x4bc469
4bc465:	33 d2                	xor    %edx,%edx
4bc467:	eb 05                	jmp    0x4bc46e
4bc469:	83 e2 fc             	and    $0xfffffffc,%edx
4bc46c:	8b 12                	mov    (%edx),%edx
4bc46e:	52                   	push   %edx
4bc46f:	ff 75 f0             	push   -0x10(%ebp)
4bc472:	83 c1 10             	add    $0x10,%ecx
4bc475:	e8 b6 f4 f9 ff       	call   0x45b930
4bc47a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4bc47d:	53                   	push   %ebx
4bc47e:	57                   	push   %edi
4bc47f:	50                   	push   %eax
4bc480:	e8 6b 2c fa ff       	call   0x45f0f0
4bc485:	8b f8                	mov    %eax,%edi
4bc487:	83 c4 0c             	add    $0xc,%esp
4bc48a:	85 ff                	test   %edi,%edi
4bc48c:	0f 85 25 ff ff ff    	jne    0x4bc3b7
4bc492:	33 ff                	xor    %edi,%edi
4bc494:	8b 45 f8             	mov    -0x8(%ebp),%eax
4bc497:	09 70 08             	or     %esi,0x8(%eax)
4bc49a:	8b c7                	mov    %edi,%eax
4bc49c:	5f                   	pop    %edi
4bc49d:	5e                   	pop    %esi
4bc49e:	5b                   	pop    %ebx
4bc49f:	8b e5                	mov    %ebp,%esp
4bc4a1:	5d                   	pop    %ebp
4bc4a2:	c2 08 00             	ret    $0x8
4bc4a5:	80 fb 12             	cmp    $0x12,%bl
4bc4a8:	0f 85 e0 01 00 00    	jne    0x4bc68e
4bc4ae:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4bc4b1:	c6 45 ec 00          	movb   $0x0,-0x14(%ebp)
4bc4b5:	83 49 08 02          	orl    $0x2,0x8(%ecx)
4bc4b9:	8b 51 04             	mov    0x4(%ecx),%edx
4bc4bc:	f6 c2 03             	test   $0x3,%dl
4bc4bf:	75 0c                	jne    0x4bc4cd
4bc4c1:	83 e2 fc             	and    $0xfffffffc,%edx
4bc4c4:	83 c1 14             	add    $0x14,%ecx
4bc4c7:	52                   	push   %edx
4bc4c8:	ff 75 ec             	push   -0x14(%ebp)
4bc4cb:	eb a8                	jmp    0x4bc475
4bc4cd:	8b c2                	mov    %edx,%eax
4bc4cf:	d1 e8                	shr    $1,%eax
4bc4d1:	a8 01                	test   $0x1,%al
4bc4d3:	74 0b                	je     0x4bc4e0
4bc4d5:	33 d2                	xor    %edx,%edx
4bc4d7:	83 c1 14             	add    $0x14,%ecx
4bc4da:	52                   	push   %edx
4bc4db:	ff 75 ec             	push   -0x14(%ebp)
4bc4de:	eb 95                	jmp    0x4bc475
4bc4e0:	83 e2 fc             	and    $0xfffffffc,%edx
4bc4e3:	83 c1 14             	add    $0x14,%ecx
4bc4e6:	8b 12                	mov    (%edx),%edx
4bc4e8:	52                   	push   %edx
4bc4e9:	ff 75 ec             	push   -0x14(%ebp)
4bc4ec:	eb 87                	jmp    0x4bc475
4bc4ee:	80 fb 1a             	cmp    $0x1a,%bl
4bc4f1:	0f 85 97 01 00 00    	jne    0x4bc68e
4bc4f7:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4bc4fa:	c6 45 e8 00          	movb   $0x0,-0x18(%ebp)
4bc4fe:	83 49 08 04          	orl    $0x4,0x8(%ecx)
4bc502:	8b 51 04             	mov    0x4(%ecx),%edx
4bc505:	f6 c2 03             	test   $0x3,%dl
4bc508:	75 0f                	jne    0x4bc519
4bc50a:	83 e2 fc             	and    $0xfffffffc,%edx
4bc50d:	83 c1 18             	add    $0x18,%ecx
4bc510:	52                   	push   %edx
4bc511:	ff 75 e8             	push   -0x18(%ebp)
4bc514:	e9 5c ff ff ff       	jmp    0x4bc475
4bc519:	8b c2                	mov    %edx,%eax
4bc51b:	d1 e8                	shr    $1,%eax
4bc51d:	a8 01                	test   $0x1,%al
4bc51f:	74 0e                	je     0x4bc52f
4bc521:	33 d2                	xor    %edx,%edx
4bc523:	83 c1 18             	add    $0x18,%ecx
4bc526:	52                   	push   %edx
4bc527:	ff 75 e8             	push   -0x18(%ebp)
4bc52a:	e9 46 ff ff ff       	jmp    0x4bc475
4bc52f:	83 e2 fc             	and    $0xfffffffc,%edx
4bc532:	83 c1 18             	add    $0x18,%ecx
4bc535:	8b 12                	mov    (%edx),%edx
4bc537:	52                   	push   %edx
4bc538:	ff 75 e8             	push   -0x18(%ebp)
4bc53b:	e9 35 ff ff ff       	jmp    0x4bc475
4bc540:	80 fb 22             	cmp    $0x22,%bl
4bc543:	0f 85 45 01 00 00    	jne    0x4bc68e
4bc549:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4bc54c:	83 4b 08 08          	orl    $0x8,0x8(%ebx)
4bc550:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
4bc553:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4bc556:	85 c9                	test   %ecx,%ecx
4bc558:	75 2d                	jne    0x4bc587
4bc55a:	8b 4b 04             	mov    0x4(%ebx),%ecx
4bc55d:	f6 c1 03             	test   $0x3,%cl
4bc560:	75 05                	jne    0x4bc567
4bc562:	83 e1 fc             	and    $0xfffffffc,%ecx
4bc565:	eb 11                	jmp    0x4bc578
4bc567:	8b c1                	mov    %ecx,%eax
4bc569:	d1 e8                	shr    $1,%eax
4bc56b:	a8 01                	test   $0x1,%al
4bc56d:	74 04                	je     0x4bc573
4bc56f:	33 c9                	xor    %ecx,%ecx
4bc571:	eb 05                	jmp    0x4bc578
4bc573:	83 e1 fc             	and    $0xfffffffc,%ecx
4bc576:	8b 09                	mov    (%ecx),%ecx
4bc578:	51                   	push   %ecx
4bc579:	e8 82 b4 00 00       	call   0x4c7a00
4bc57e:	83 c4 04             	add    $0x4,%esp
4bc581:	89 43 1c             	mov    %eax,0x1c(%ebx)
4bc584:	89 45 f4             	mov    %eax,-0xc(%ebp)
4bc587:	0f b6 07             	movzbl (%edi),%eax
4bc58a:	3d 80 00 00 00       	cmp    $0x80,%eax
4bc58f:	73 03                	jae    0x4bc594
4bc591:	47                   	inc    %edi
4bc592:	eb 14                	jmp    0x4bc5a8
4bc594:	50                   	push   %eax
4bc595:	8d 45 c8             	lea    -0x38(%ebp),%eax
4bc598:	57                   	push   %edi
4bc599:	50                   	push   %eax
4bc59a:	e8 d1 32 fa ff       	call   0x45f870
4bc59f:	8b 7d c8             	mov    -0x38(%ebp),%edi
4bc5a2:	83 c4 0c             	add    $0xc,%esp
4bc5a5:	8b 45 cc             	mov    -0x34(%ebp),%eax
4bc5a8:	85 ff                	test   %edi,%edi
4bc5aa:	0f 84 e2 fe ff ff    	je     0x4bc492
4bc5b0:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4bc5b3:	2b 43 04             	sub    0x4(%ebx),%eax
4bc5b6:	8d 14 38             	lea    (%eax,%edi,1),%edx
4bc5b9:	33 c0                	xor    %eax,%eax
4bc5bb:	85 d2                	test   %edx,%edx
4bc5bd:	89 55 e0             	mov    %edx,-0x20(%ebp)
4bc5c0:	0f 48 c2             	cmovs  %edx,%eax
4bc5c3:	03 43 04             	add    0x4(%ebx),%eax
4bc5c6:	83 43 44 ff          	addl   $0xffffffff,0x44(%ebx)
4bc5ca:	89 03                	mov    %eax,(%ebx)
4bc5cc:	8b 43 10             	mov    0x10(%ebx),%eax
4bc5cf:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4bc5d2:	89 53 10             	mov    %edx,0x10(%ebx)
4bc5d5:	0f 88 b7 fe ff ff    	js     0x4bc492
4bc5db:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4bc5de:	53                   	push   %ebx
4bc5df:	57                   	push   %edi
4bc5e0:	e8 bb 40 00 00       	call   0x4c06a0
4bc5e5:	8b f8                	mov    %eax,%edi
4bc5e7:	85 ff                	test   %edi,%edi
4bc5e9:	0f 84 a3 fe ff ff    	je     0x4bc492
4bc5ef:	ff 43 44             	incl   0x44(%ebx)
4bc5f2:	83 7b 3c 00          	cmpl   $0x0,0x3c(%ebx)
4bc5f6:	0f 85 96 fe ff ff    	jne    0x4bc492
4bc5fc:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4bc5ff:	2b 45 e0             	sub    -0x20(%ebp),%eax
4bc602:	01 43 10             	add    %eax,0x10(%ebx)
4bc605:	b8 00 00 00 00       	mov    $0x0,%eax
4bc60a:	0f 48 43 10          	cmovs  0x10(%ebx),%eax
4bc60e:	03 43 04             	add    0x4(%ebx),%eax