434393:	6a 1f                	push   $0x1f
434395:	58                   	pop    %eax
434396:	2b c1                	sub    %ecx,%eax
434398:	89 45 d0             	mov    %eax,-0x30(%ebp)
43439b:	8b 4d d0             	mov    -0x30(%ebp),%ecx
43439e:	33 c0                	xor    %eax,%eax
4343a0:	40                   	inc    %eax
4343a1:	d3 e0                	shl    %cl,%eax
4343a3:	85 44 95 f0          	test   %eax,-0x10(%ebp,%edx,4)
4343a7:	0f 84 92 00 00 00    	je     0x43443f
4343ad:	8b c7                	mov    %edi,%eax
4343af:	d3 e0                	shl    %cl,%eax
4343b1:	f7 d0                	not    %eax
4343b3:	85 44 95 f0          	test   %eax,-0x10(%ebp,%edx,4)
4343b7:	eb 04                	jmp    0x4343bd
4343b9:	39 5c 95 f0          	cmp    %ebx,-0x10(%ebp,%edx,4)
4343bd:	75 07                	jne    0x4343c6
4343bf:	42                   	inc    %edx
4343c0:	3b d6                	cmp    %esi,%edx
4343c2:	7c f5                	jl     0x4343b9
4343c4:	eb 76                	jmp    0x43443c
4343c6:	8b 7d cc             	mov    -0x34(%ebp),%edi
4343c9:	8b c7                	mov    %edi,%eax
4343cb:	99                   	cltd
4343cc:	6a 1f                	push   $0x1f
4343ce:	59                   	pop    %ecx
4343cf:	23 d1                	and    %ecx,%edx
4343d1:	03 d0                	add    %eax,%edx
4343d3:	c1 fa 05             	sar    $0x5,%edx
4343d6:	81 e7 1f 00 00 80    	and    $0x8000001f,%edi
4343dc:	79 05                	jns    0x4343e3
4343de:	4f                   	dec    %edi
4343df:	83 cf e0             	or     $0xffffffe0,%edi
4343e2:	47                   	inc    %edi
4343e3:	8b 44 95 f0          	mov    -0x10(%ebp,%edx,4),%eax
4343e7:	2b cf                	sub    %edi,%ecx
4343e9:	33 ff                	xor    %edi,%edi
4343eb:	47                   	inc    %edi
4343ec:	d3 e7                	shl    %cl,%edi
4343ee:	6a ff                	push   $0xffffffff
4343f0:	8b cb                	mov    %ebx,%ecx
4343f2:	89 7d dc             	mov    %edi,-0x24(%ebp)
4343f5:	03 f8                	add    %eax,%edi
4343f7:	89 7d e0             	mov    %edi,-0x20(%ebp)
4343fa:	3b f8                	cmp    %eax,%edi
4343fc:	8b 45 e0             	mov    -0x20(%ebp),%eax
4343ff:	5f                   	pop    %edi
434400:	72 05                	jb     0x434407
434402:	3b 45 dc             	cmp    -0x24(%ebp),%eax
434405:	73 03                	jae    0x43440a
434407:	33 c9                	xor    %ecx,%ecx
434409:	41                   	inc    %ecx
43440a:	4a                   	dec    %edx
43440b:	89 44 95 f4          	mov    %eax,-0xc(%ebp,%edx,4)
43440f:	78 28                	js     0x434439
434411:	85 c9                	test   %ecx,%ecx
434413:	74 21                	je     0x434436
434415:	8b 44 95 f0          	mov    -0x10(%ebp,%edx,4),%eax
434419:	8b cb                	mov    %ebx,%ecx
43441b:	8d 78 01             	lea    0x1(%eax),%edi
43441e:	3b f8                	cmp    %eax,%edi
434420:	89 7d e0             	mov    %edi,-0x20(%ebp)
434423:	8b c7                	mov    %edi,%eax
434425:	72 05                	jb     0x43442c
434427:	83 f8 01             	cmp    $0x1,%eax
43442a:	73 03                	jae    0x43442f
43442c:	33 c9                	xor    %ecx,%ecx
43442e:	41                   	inc    %ecx
43442f:	4a                   	dec    %edx
434430:	89 44 95 f4          	mov    %eax,-0xc(%ebp,%edx,4)
434434:	79 db                	jns    0x434411
434436:	83 cf ff             	or     $0xffffffff,%edi
434439:	8b 4d d0             	mov    -0x30(%ebp),%ecx
43443c:	8b 55 d4             	mov    -0x2c(%ebp),%edx
43443f:	8b c7                	mov    %edi,%eax
434441:	d3 e0                	shl    %cl,%eax
434443:	21 44 95 f0          	and    %eax,-0x10(%ebp,%edx,4)
434447:	42                   	inc    %edx
434448:	3b d6                	cmp    %esi,%edx
43444a:	7d 11                	jge    0x43445d
43444c:	8d 7d f0             	lea    -0x10(%ebp),%edi
43444f:	8b ce                	mov    %esi,%ecx
434451:	8d 3c 97             	lea    (%edi,%edx,4),%edi
434454:	2b ca                	sub    %edx,%ecx
434456:	33 c0                	xor    %eax,%eax
434458:	f3 ab                	rep stos %eax,%es:(%edi)
43445a:	83 cf ff             	or     $0xffffffff,%edi
43445d:	8b 0d 8c b1 4b 00    	mov    0x4bb18c,%ecx
434463:	41                   	inc    %ecx
434464:	8b c1                	mov    %ecx,%eax
434466:	99                   	cltd
434467:	83 e2 1f             	and    $0x1f,%edx
43446a:	03 c2                	add    %edx,%eax
43446c:	c1 f8 05             	sar    $0x5,%eax
43446f:	89 45 d8             	mov    %eax,-0x28(%ebp)
434472:	81 e1 1f 00 00 80    	and    $0x8000001f,%ecx
434478:	79 05                	jns    0x43447f
43447a:	49                   	dec    %ecx
43447b:	83 c9 e0             	or     $0xffffffe0,%ecx
43447e:	41                   	inc    %ecx
43447f:	89 4d dc             	mov    %ecx,-0x24(%ebp)
434482:	d3 e7                	shl    %cl,%edi
434484:	8b c3                	mov    %ebx,%eax
434486:	6a 20                	push   $0x20
434488:	89 5d e0             	mov    %ebx,-0x20(%ebp)
43448b:	8b 5d dc             	mov    -0x24(%ebp),%ebx
43448e:	59                   	pop    %ecx
43448f:	2b cb                	sub    %ebx,%ecx
434491:	f7 d7                	not    %edi
434493:	89 45 cc             	mov    %eax,-0x34(%ebp)
434496:	89 4d dc             	mov    %ecx,-0x24(%ebp)
434499:	8b 54 85 f0          	mov    -0x10(%ebp,%eax,4),%edx
43449d:	8b c2                	mov    %edx,%eax
43449f:	8b cb                	mov    %ebx,%ecx
4344a1:	d3 ea                	shr    %cl,%edx
4344a3:	8b 4d cc             	mov    -0x34(%ebp),%ecx
4344a6:	23 c7                	and    %edi,%eax
4344a8:	0b 55 e0             	or     -0x20(%ebp),%edx
4344ab:	89 54 8d f0          	mov    %edx,-0x10(%ebp,%ecx,4)
4344af:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4344b2:	d3 e0                	shl    %cl,%eax
4344b4:	89 45 e0             	mov    %eax,-0x20(%ebp)
4344b7:	8b 45 cc             	mov    -0x34(%ebp),%eax
4344ba:	40                   	inc    %eax
4344bb:	89 45 cc             	mov    %eax,-0x34(%ebp)
4344be:	3b c6                	cmp    %esi,%eax
4344c0:	7c d7                	jl     0x434499
4344c2:	8b 75 d8             	mov    -0x28(%ebp),%esi
4344c5:	8b c6                	mov    %esi,%eax
4344c7:	c1 e0 02             	shl    $0x2,%eax
4344ca:	8d 55 f8             	lea    -0x8(%ebp),%edx
4344cd:	6a 02                	push   $0x2
4344cf:	2b d0                	sub    %eax,%edx
4344d1:	59                   	pop    %ecx
4344d2:	33 db                	xor    %ebx,%ebx
4344d4:	3b ce                	cmp    %esi,%ecx
4344d6:	7c 08                	jl     0x4344e0
4344d8:	8b 02                	mov    (%edx),%eax
4344da:	89 44 8d f0          	mov    %eax,-0x10(%ebp,%ecx,4)
4344de:	eb 04                	jmp    0x4344e4
4344e0:	89 5c 8d f0          	mov    %ebx,-0x10(%ebp,%ecx,4)
4344e4:	83 ea 04             	sub    $0x4,%edx
4344e7:	49                   	dec    %ecx
4344e8:	79 ea                	jns    0x4344d4
4344ea:	e9 d8 fd ff ff       	jmp    0x4342c7
4344ef:	3b 0d 80 b1 4b 00    	cmp    0x4bb180,%ecx
4344f5:	0f 8c a2 00 00 00    	jl     0x43459d
4344fb:	8b 0d 8c b1 4b 00    	mov    0x4bb18c,%ecx
434501:	33 c0                	xor    %eax,%eax
434503:	8d 7d f0             	lea    -0x10(%ebp),%edi
434506:	ab                   	stos   %eax,%es:(%edi)
434507:	ab                   	stos   %eax,%es:(%edi)
434508:	ab                   	stos   %eax,%es:(%edi)
434509:	81 4d f0 00 00 00 80 	orl    $0x80000000,-0x10(%ebp)
434510:	8b c1                	mov    %ecx,%eax
434512:	99                   	cltd
434513:	83 e2 1f             	and    $0x1f,%edx
434516:	03 c2                	add    %edx,%eax
434518:	c1 f8 05             	sar    $0x5,%eax
43451b:	89 45 cc             	mov    %eax,-0x34(%ebp)
43451e:	81 e1 1f 00 00 80    	and    $0x8000001f,%ecx
434524:	79 05                	jns    0x43452b
434526:	49                   	dec    %ecx
434527:	83 c9 e0             	or     $0xffffffe0,%ecx
43452a:	41                   	inc    %ecx
43452b:	83 cf ff             	or     $0xffffffff,%edi
43452e:	d3 e7                	shl    %cl,%edi
434530:	6a 20                	push   $0x20
434532:	58                   	pop    %eax
434533:	2b c1                	sub    %ecx,%eax
434535:	89 4d c8             	mov    %ecx,-0x38(%ebp)
434538:	f7 d7                	not    %edi
43453a:	89 5d e0             	mov    %ebx,-0x20(%ebp)
43453d:	89 45 d8             	mov    %eax,-0x28(%ebp)
434540:	8b 54 9d f0          	mov    -0x10(%ebp,%ebx,4),%edx
434544:	8b c2                	mov    %edx,%eax
434546:	d3 ea                	shr    %cl,%edx
434548:	8b 4d d8             	mov    -0x28(%ebp),%ecx
43454b:	23 c7                	and    %edi,%eax
43454d:	d3 e0                	shl    %cl,%eax
43454f:	0b 55 e0             	or     -0x20(%ebp),%edx
434552:	8b 4d c8             	mov    -0x38(%ebp),%ecx
434555:	89 54 9d f0          	mov    %edx,-0x10(%ebp,%ebx,4)
434559:	43                   	inc    %ebx
43455a:	89 45 e0             	mov    %eax,-0x20(%ebp)
43455d:	3b de                	cmp    %esi,%ebx
43455f:	7c df                	jl     0x434540
434561:	8b 75 cc             	mov    -0x34(%ebp),%esi
434564:	8b c6                	mov    %esi,%eax
434566:	c1 e0 02             	shl    $0x2,%eax
434569:	8d 55 f8             	lea    -0x8(%ebp),%edx
43456c:	6a 02                	push   $0x2
43456e:	2b d0                	sub    %eax,%edx
434570:	59                   	pop    %ecx
434571:	33 db                	xor    %ebx,%ebx
434573:	3b ce                	cmp    %esi,%ecx
434575:	7c 08                	jl     0x43457f
434577:	8b 02                	mov    (%edx),%eax
434579:	89 44 8d f0          	mov    %eax,-0x10(%ebp,%ecx,4)
43457d:	eb 04                	jmp    0x434583
43457f:	89 5c 8d f0          	mov    %ebx,-0x10(%ebp,%ecx,4)
434583:	83 ea 04             	sub    $0x4,%edx
434586:	49                   	dec    %ecx
434587:	79 ea                	jns    0x434573
434589:	8b 35 94 b1 4b 00    	mov    0x4bb194,%esi
43458f:	03 35 80 b1 4b 00    	add    0x4bb180,%esi
434595:	33 db                	xor    %ebx,%ebx
434597:	43                   	inc    %ebx
434598:	e9 95 00 00 00       	jmp    0x434632
43459d:	8b 35 94 b1 4b 00    	mov    0x4bb194,%esi
4345a3:	81 65 f0 ff ff ff 7f 	andl   $0x7fffffff,-0x10(%ebp)
4345aa:	03 f1                	add    %ecx,%esi
4345ac:	8b 0d 8c b1 4b 00    	mov    0x4bb18c,%ecx
4345b2:	8b c1                	mov    %ecx,%eax
4345b4:	99                   	cltd
4345b5:	83 e2 1f             	and    $0x1f,%edx
4345b8:	03 c2                	add    %edx,%eax
4345ba:	c1 f8 05             	sar    $0x5,%eax
4345bd:	89 75 c8             	mov    %esi,-0x38(%ebp)
4345c0:	89 45 d8             	mov    %eax,-0x28(%ebp)
4345c3:	81 e1 1f 00 00 80    	and    $0x8000001f,%ecx
4345c9:	79 05                	jns    0x4345d0
4345cb:	49                   	dec    %ecx
4345cc:	83 c9 e0             	or     $0xffffffe0,%ecx
4345cf:	41                   	inc    %ecx
4345d0:	d3 e7                	shl    %cl,%edi
4345d2:	6a 20                	push   $0x20
4345d4:	89 5d e0             	mov    %ebx,-0x20(%ebp)
4345d7:	8b f3                	mov    %ebx,%esi
4345d9:	58                   	pop    %eax
4345da:	8b d9                	mov    %ecx,%ebx
4345dc:	2b c3                	sub    %ebx,%eax
4345de:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4345e1:	f7 d7                	not    %edi
4345e3:	89 45 dc             	mov    %eax,-0x24(%ebp)
4345e6:	8b 54 b5 f0          	mov    -0x10(%ebp,%esi,4),%edx
4345ea:	8b c2                	mov    %edx,%eax
4345ec:	8b cb                	mov    %ebx,%ecx
4345ee:	d3 ea                	shr    %cl,%edx
4345f0:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4345f3:	23 c7                	and    %edi,%eax
4345f5:	d3 e0                	shl    %cl,%eax
4345f7:	0b 55 e0             	or     -0x20(%ebp),%edx
4345fa:	46                   	inc    %esi
4345fb:	89 54 b5 ec          	mov    %edx,-0x14(%ebp,%esi,4)
4345ff:	89 45 e0             	mov    %eax,-0x20(%ebp)
434602:	83 fe 03             	cmp    $0x3,%esi
434605:	7c df                	jl     0x4345e6
434607:	8b 7d d8             	mov    -0x28(%ebp),%edi
43460a:	8b 75 c8             	mov    -0x38(%ebp),%esi
43460d:	8b c7                	mov    %edi,%eax
43460f:	c1 e0 02             	shl    $0x2,%eax
434612:	8d 55 f8             	lea    -0x8(%ebp),%edx
434615:	6a 02                	push   $0x2
434617:	2b d0                	sub    %eax,%edx
434619:	59                   	pop    %ecx
43461a:	33 db                	xor    %ebx,%ebx
43461c:	3b cf                	cmp    %edi,%ecx
43461e:	7c 08                	jl     0x434628
434620:	8b 02                	mov    (%edx),%eax
434622:	89 44 8d f0          	mov    %eax,-0x10(%ebp,%ecx,4)
434626:	eb 04                	jmp    0x43462c
434628:	89 5c 8d f0          	mov    %ebx,-0x10(%ebp,%ecx,4)
43462c:	83 ea 04             	sub    $0x4,%edx
43462f:	49                   	dec    %ecx
434630:	79 ea                	jns    0x43461c
434632:	8b 7d c0             	mov    -0x40(%ebp),%edi
434635:	6a 1f                	push   $0x1f
434637:	58                   	pop    %eax
434638:	2b 05 8c b1 4b 00    	sub    0x4bb18c,%eax
43463e:	8b c8                	mov    %eax,%ecx
434640:	8b 45 bc             	mov    -0x44(%ebp),%eax
434643:	d3 e6                	shl    %cl,%esi
434645:	f7 d8                	neg    %eax
434647:	1b c0                	sbb    %eax,%eax
434649:	25 00 00 00 80       	and    $0x80000000,%eax
43464e:	0b f0                	or     %eax,%esi
434650:	a1 90 b1 4b 00       	mov    0x4bb190,%eax
434655:	0b 75 f0             	or     -0x10(%ebp),%esi
434658:	83 f8 40             	cmp    $0x40,%eax
43465b:	75 0a                	jne    0x434667
43465d:	8b 45 f4             	mov    -0xc(%ebp),%eax
434660:	89 77 04             	mov    %esi,0x4(%edi)
434663:	89 07                	mov    %eax,(%edi)
434665:	eb 07                	jmp    0x43466e
434667:	83 f8 20             	cmp    $0x20,%eax
43466a:	75 02                	jne    0x43466e
43466c:	89 37                	mov    %esi,(%edi)
43466e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
434671:	5f                   	pop    %edi
434672:	5e                   	pop    %esi
434673:	8b c3                	mov    %ebx,%eax
434675:	33 cd                	xor    %ebp,%ecx
434677:	5b                   	pop    %ebx
434678:	e8 8f 60 ff ff       	call   0x42a70c
43467d:	c9                   	leave
43467e:	c3                   	ret
43467f:	55                   	push   %ebp
434680:	8b ec                	mov    %esp,%ebp
434682:	83 ec 44             	sub    $0x44,%esp
434685:	a1 c0 ad 4b 00       	mov    0x4badc0,%eax
43468a:	33 c5                	xor    %ebp,%eax
43468c:	89 45 fc             	mov    %eax,-0x4(%ebp)
43468f:	8b 4d 08             	mov    0x8(%ebp),%ecx
434692:	53                   	push   %ebx
434693:	0f b7 41 0a          	movzwl 0xa(%ecx),%eax
434697:	8b d0                	mov    %eax,%edx
434699:	25 00 80 00 00       	and    $0x8000,%eax
43469e:	89 45 bc             	mov    %eax,-0x44(%ebp)
4346a1:	8b 41 06             	mov    0x6(%ecx),%eax
4346a4:	89 45 f0             	mov    %eax,-0x10(%ebp)
4346a7:	8b 41 02             	mov    0x2(%ecx),%eax
4346aa:	89 45 f4             	mov    %eax,-0xc(%ebp)
4346ad:	0f b7 01             	movzwl (%ecx),%eax
4346b0:	81 e2 ff 7f 00 00    	and    $0x7fff,%edx
4346b6:	56                   	push   %esi
4346b7:	81 ea ff 3f 00 00    	sub    $0x3fff,%edx
4346bd:	57                   	push   %edi
4346be:	8b 7d 0c             	mov    0xc(%ebp),%edi
4346c1:	c1 e0 10             	shl    $0x10,%eax
4346c4:	33 db                	xor    %ebx,%ebx
4346c6:	89 7d c0             	mov    %edi,-0x40(%ebp)
4346c9:	89 55 e0             	mov    %edx,-0x20(%ebp)
4346cc:	89 45 f8             	mov    %eax,-0x8(%ebp)
4346cf:	81 fa 01 c0 ff ff    	cmp    $0xffffc001,%edx
4346d5:	75 25                	jne    0x4346fc
4346d7:	8b f3                	mov    %ebx,%esi
4346d9:	8b c3                	mov    %ebx,%eax
4346db:	39 5c 85 f0          	cmp    %ebx,-0x10(%ebp,%eax,4)
4346df:	75 0b                	jne    0x4346ec
4346e1:	40                   	inc    %eax
4346e2:	83 f8 03             	cmp    $0x3,%eax
4346e5:	7c f4                	jl     0x4346db
4346e7:	e9 b9 04 00 00       	jmp    0x434ba5
4346ec:	33 c0                	xor    %eax,%eax
4346ee:	8d 7d f0             	lea    -0x10(%ebp),%edi
4346f1:	ab                   	stos   %eax,%es:(%edi)
4346f2:	ab                   	stos   %eax,%es:(%edi)
4346f3:	ab                   	stos   %eax,%es:(%edi)
4346f4:	6a 02                	push   $0x2
4346f6:	5b                   	pop    %ebx
4346f7:	e9 a6 04 00 00       	jmp    0x434ba2
4346fc:	a1 a0 b1 4b 00       	mov    0x4bb1a0,%eax
434701:	8d 75 f0             	lea    -0x10(%ebp),%esi
434704:	8d 7d e4             	lea    -0x1c(%ebp),%edi
434707:	a5                   	movsl  %ds:(%esi),%es:(%edi)
434708:	48                   	dec    %eax
434709:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43470a:	8d 48 01             	lea    0x1(%eax),%ecx
43470d:	89 55 dc             	mov    %edx,-0x24(%ebp)