5a3463:	74 5c                	je     0x5a34c1
5a3465:	8b 44 24 20          	mov    0x20(%esp),%eax
5a3469:	8b 4c 24 30          	mov    0x30(%esp),%ecx
5a346d:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
5a3471:	7e 09                	jle    0x5a347c
5a3473:	8b 00                	mov    (%eax),%eax
5a3475:	f6 00 01             	testb  $0x1,(%eax)
5a3478:	74 02                	je     0x5a347c
5a347a:	fe 07                	incb   (%edi)
5a347c:	51                   	push   %ecx
5a347d:	be 01 00 00 00       	mov    $0x1,%esi
5a3482:	e8 e9 fe f0 ff       	call   0x4b3370
5a3487:	83 c0 07             	add    $0x7,%eax
5a348a:	83 c4 04             	add    $0x4,%esp
5a348d:	99                   	cltd
5a348e:	83 e2 07             	and    $0x7,%edx
5a3491:	03 c2                	add    %edx,%eax
5a3493:	8b 54 24 14          	mov    0x14(%esp),%edx
5a3497:	c1 f8 03             	sar    $0x3,%eax
5a349a:	2b d0                	sub    %eax,%edx
5a349c:	89 54 24 20          	mov    %edx,0x20(%esp)
5a34a0:	3b 54 24 14          	cmp    0x14(%esp),%edx
5a34a4:	76 3f                	jbe    0x5a34e5
5a34a6:	68 f4 00 00 00       	push   $0xf4
5a34ab:	68 40 c1 6c 00       	push   $0x6cc140
5a34b0:	6a 44                	push   $0x44
5a34b2:	68 a1 00 00 00       	push   $0xa1
5a34b7:	6a 10                	push   $0x10
5a34b9:	e8 e2 df ef ff       	call   0x4a14a0
5a34be:	83 c4 14             	add    $0x14,%esp
5a34c1:	55                   	push   %ebp
5a34c2:	e8 89 48 f3 ff       	call   0x4d7d50
5a34c7:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5a34cb:	83 c4 04             	add    $0x4,%esp
5a34ce:	85 c0                	test   %eax,%eax
5a34d0:	74 09                	je     0x5a34db
5a34d2:	50                   	push   %eax
5a34d3:	e8 b8 48 f3 ff       	call   0x4d7d90
5a34d8:	83 c4 04             	add    $0x4,%esp
5a34db:	5f                   	pop    %edi
5a34dc:	5e                   	pop    %esi
5a34dd:	5d                   	pop    %ebp
5a34de:	33 c0                	xor    %eax,%eax
5a34e0:	5b                   	pop    %ebx
5a34e1:	83 c4 14             	add    $0x14,%esp
5a34e4:	c3                   	ret
5a34e5:	85 d2                	test   %edx,%edx
5a34e7:	74 1a                	je     0x5a3503
5a34e9:	8b 74 24 20          	mov    0x20(%esp),%esi
5a34ed:	47                   	inc    %edi
5a34ee:	8b ca                	mov    %edx,%ecx
5a34f0:	33 c0                	xor    %eax,%eax
5a34f2:	c1 e9 02             	shr    $0x2,%ecx
5a34f5:	f3 ab                	rep stos %eax,%es:(%edi)
5a34f7:	8b ca                	mov    %edx,%ecx
5a34f9:	83 e1 03             	and    $0x3,%ecx
5a34fc:	46                   	inc    %esi
5a34fd:	f3 aa                	rep stos %al,%es:(%edi)
5a34ff:	8b 7c 24 34          	mov    0x34(%esp),%edi
5a3503:	8d 04 3e             	lea    (%esi,%edi,1),%eax
5a3506:	50                   	push   %eax
5a3507:	ff 74 24 34          	push   0x34(%esp)
5a350b:	e8 00 f8 f0 ff       	call   0x4b2d10
5a3510:	03 f0                	add    %eax,%esi
5a3512:	83 c4 08             	add    $0x8,%esp
5a3515:	8b 44 24 14          	mov    0x14(%esp),%eax
5a3519:	40                   	inc    %eax
5a351a:	3b f0                	cmp    %eax,%esi
5a351c:	74 07                	je     0x5a3525
5a351e:	68 fe 00 00 00       	push   $0xfe
5a3523:	eb 86                	jmp    0x5a34ab
5a3525:	83 fb 04             	cmp    $0x4,%ebx
5a3528:	74 05                	je     0x5a352f
5a352a:	83 fb 06             	cmp    $0x6,%ebx
5a352d:	75 5e                	jne    0x5a358d
5a352f:	ff 74 24 10          	push   0x10(%esp)
5a3533:	e8 38 fe f0 ff       	call   0x4b3370
5a3538:	8b 5c 24 18          	mov    0x18(%esp),%ebx
5a353c:	83 c0 07             	add    $0x7,%eax
5a353f:	99                   	cltd
5a3540:	83 c4 04             	add    $0x4,%esp
5a3543:	83 e2 07             	and    $0x7,%edx
5a3546:	03 c2                	add    %edx,%eax
5a3548:	c1 f8 03             	sar    $0x3,%eax
5a354b:	2b d8                	sub    %eax,%ebx
5a354d:	3b 5c 24 14          	cmp    0x14(%esp),%ebx
5a3551:	76 0a                	jbe    0x5a355d
5a3553:	68 06 01 00 00       	push   $0x106
5a3558:	e9 4e ff ff ff       	jmp    0x5a34ab
5a355d:	85 db                	test   %ebx,%ebx
5a355f:	74 1a                	je     0x5a357b
5a3561:	8b cb                	mov    %ebx,%ecx
5a3563:	03 fe                	add    %esi,%edi
5a3565:	8b d1                	mov    %ecx,%edx
5a3567:	33 c0                	xor    %eax,%eax
5a3569:	c1 e9 02             	shr    $0x2,%ecx
5a356c:	f3 ab                	rep stos %eax,%es:(%edi)
5a356e:	8b ca                	mov    %edx,%ecx
5a3570:	83 e1 03             	and    $0x3,%ecx
5a3573:	03 f3                	add    %ebx,%esi
5a3575:	f3 aa                	rep stos %al,%es:(%edi)
5a3577:	8b 7c 24 34          	mov    0x34(%esp),%edi
5a357b:	8d 04 3e             	lea    (%esi,%edi,1),%eax
5a357e:	50                   	push   %eax
5a357f:	ff 74 24 14          	push   0x14(%esp)
5a3583:	e8 88 f7 f0 ff       	call   0x4b2d10
5a3588:	83 c4 08             	add    $0x8,%esp
5a358b:	03 f0                	add    %eax,%esi
5a358d:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
5a3591:	3b f7                	cmp    %edi,%esi
5a3593:	74 0a                	je     0x5a359f
5a3595:	68 12 01 00 00       	push   $0x112
5a359a:	e9 0c ff ff ff       	jmp    0x5a34ab
5a359f:	55                   	push   %ebp
5a35a0:	e8 ab 47 f3 ff       	call   0x4d7d50
5a35a5:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5a35a9:	83 c4 04             	add    $0x4,%esp
5a35ac:	85 c0                	test   %eax,%eax
5a35ae:	74 17                	je     0x5a35c7
5a35b0:	50                   	push   %eax
5a35b1:	e8 da 47 f3 ff       	call   0x4d7d90
5a35b6:	83 c4 04             	add    $0x4,%esp
5a35b9:	8b c7                	mov    %edi,%eax
5a35bb:	5f                   	pop    %edi
5a35bc:	5e                   	pop    %esi
5a35bd:	5d                   	pop    %ebp
5a35be:	5b                   	pop    %ebx
5a35bf:	83 c4 14             	add    $0x14,%esp
5a35c2:	c3                   	ret
5a35c3:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
5a35c7:	8b c7                	mov    %edi,%eax
5a35c9:	5f                   	pop    %edi
5a35ca:	5e                   	pop    %esi
5a35cb:	5d                   	pop    %ebp
5a35cc:	5b                   	pop    %ebx
5a35cd:	83 c4 14             	add    $0x14,%esp
5a35d0:	c3                   	ret
5a35d1:	cc                   	int3
5a35d2:	cc                   	int3
5a35d3:	cc                   	int3
5a35d4:	cc                   	int3
5a35d5:	cc                   	int3
5a35d6:	cc                   	int3
5a35d7:	cc                   	int3
5a35d8:	cc                   	int3
5a35d9:	cc                   	int3
5a35da:	cc                   	int3
5a35db:	cc                   	int3
5a35dc:	cc                   	int3
5a35dd:	cc                   	int3
5a35de:	cc                   	int3
5a35df:	cc                   	int3
5a35e0:	b8 0c 00 00 00       	mov    $0xc,%eax
5a35e5:	e8 06 df 03 00       	call   0x5e14f0
5a35ea:	53                   	push   %ebx
5a35eb:	56                   	push   %esi
5a35ec:	57                   	push   %edi
5a35ed:	33 ff                	xor    %edi,%edi
5a35ef:	33 db                	xor    %ebx,%ebx
5a35f1:	e8 1a db ef ff       	call   0x4a1110
5a35f6:	8b 74 24 2c          	mov    0x2c(%esp),%esi
5a35fa:	85 f6                	test   %esi,%esi
5a35fc:	75 14                	jne    0x5a3612
5a35fe:	e8 1d 48 f3 ff       	call   0x4d7e20
5a3603:	8b f8                	mov    %eax,%edi
5a3605:	8b f7                	mov    %edi,%esi
5a3607:	85 ff                	test   %edi,%edi
5a3609:	75 07                	jne    0x5a3612
5a360b:	5f                   	pop    %edi
5a360c:	5e                   	pop    %esi
5a360d:	5b                   	pop    %ebx
5a360e:	83 c4 0c             	add    $0xc,%esp
5a3611:	c3                   	ret
5a3612:	33 c0                	xor    %eax,%eax
5a3614:	39 44 24 28          	cmp    %eax,0x28(%esp)
5a3618:	55                   	push   %ebp
5a3619:	0f 95 c0             	setne  %al
5a361c:	56                   	push   %esi
5a361d:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5a3621:	e8 7a 48 f3 ff       	call   0x4d7ea0
5a3626:	56                   	push   %esi
5a3627:	e8 94 47 f3 ff       	call   0x4d7dc0
5a362c:	56                   	push   %esi
5a362d:	8b e8                	mov    %eax,%ebp
5a362f:	e8 8c 47 f3 ff       	call   0x4d7dc0
5a3634:	56                   	push   %esi
5a3635:	89 44 24 40          	mov    %eax,0x40(%esp)
5a3639:	e8 82 47 f3 ff       	call   0x4d7dc0
5a363e:	56                   	push   %esi
5a363f:	89 44 24 24          	mov    %eax,0x24(%esp)
5a3643:	e8 78 47 f3 ff       	call   0x4d7dc0
5a3648:	83 c4 14             	add    $0x14,%esp
5a364b:	89 44 24 14          	mov    %eax,0x14(%esp)
5a364f:	85 c0                	test   %eax,%eax
5a3651:	0f 84 03 01 00 00    	je     0x5a375a
5a3657:	8b 5c 24 20          	mov    0x20(%esp),%ebx
5a365b:	8d 43 5c             	lea    0x5c(%ebx),%eax
5a365e:	50                   	push   %eax
5a365f:	ff 74 24 2c          	push   0x2c(%esp)
5a3663:	ff 74 24 38          	push   0x38(%esp)
5a3667:	e8 d4 6b 00 00       	call   0x5aa240
5a366c:	83 c4 0c             	add    $0xc,%esp
5a366f:	85 c0                	test   %eax,%eax
5a3671:	0f 84 e1 00 00 00    	je     0x5a3758
5a3677:	8b 4c 24 30          	mov    0x30(%esp),%ecx
5a367b:	56                   	push   %esi
5a367c:	83 79 04 00          	cmpl   $0x0,0x4(%ecx)
5a3680:	75 28                	jne    0x5a36aa
5a3682:	8d 43 5c             	lea    0x5c(%ebx),%eax
5a3685:	50                   	push   %eax
5a3686:	8d 83 88 00 00 00    	lea    0x88(%ebx),%eax
5a368c:	50                   	push   %eax
5a368d:	ff 74 24 1c          	push   0x1c(%esp)
5a3691:	e8 aa 7c 00 00       	call   0x5ab340
5a3696:	83 c4 10             	add    $0x10,%esp
5a3699:	85 c0                	test   %eax,%eax
5a369b:	0f 84 b7 00 00 00    	je     0x5a3758
5a36a1:	8b 6c 24 30          	mov    0x30(%esp),%ebp
5a36a5:	e9 3a 01 00 00       	jmp    0x5a37e4
5a36aa:	8b 03                	mov    (%ebx),%eax
5a36ac:	51                   	push   %ecx
5a36ad:	55                   	push   %ebp
5a36ae:	53                   	push   %ebx
5a36af:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5a36b5:	ff d0                	call   *%eax
5a36b7:	83 c4 10             	add    $0x10,%esp
5a36ba:	85 c0                	test   %eax,%eax
5a36bc:	0f 84 96 00 00 00    	je     0x5a3758
5a36c2:	8b 0b                	mov    (%ebx),%ecx
5a36c4:	8d 83 88 00 00 00    	lea    0x88(%ebx),%eax
5a36ca:	56                   	push   %esi
5a36cb:	55                   	push   %ebp
5a36cc:	50                   	push   %eax
5a36cd:	8b 81 8c 00 00 00    	mov    0x8c(%ecx),%eax
5a36d3:	55                   	push   %ebp
5a36d4:	53                   	push   %ebx
5a36d5:	ff d0                	call   *%eax
5a36d7:	83 c4 14             	add    $0x14,%esp
5a36da:	85 c0                	test   %eax,%eax
5a36dc:	74 7a                	je     0x5a3758
5a36de:	55                   	push   %ebp
5a36df:	8d 43 74             	lea    0x74(%ebx),%eax
5a36e2:	50                   	push   %eax
5a36e3:	55                   	push   %ebp
5a36e4:	e8 17 6a 00 00       	call   0x5aa100
5a36e9:	83 c4 0c             	add    $0xc,%esp
5a36ec:	85 c0                	test   %eax,%eax
5a36ee:	74 68                	je     0x5a3758
5a36f0:	55                   	push   %ebp
5a36f1:	ff 74 24 34          	push   0x34(%esp)
5a36f5:	55                   	push   %ebp
5a36f6:	e8 05 6a 00 00       	call   0x5aa100
5a36fb:	83 c4 0c             	add    $0xc,%esp
5a36fe:	85 c0                	test   %eax,%eax
5a3700:	74 56                	je     0x5a3758
5a3702:	56                   	push   %esi
5a3703:	8d 43 5c             	lea    0x5c(%ebx),%eax
5a3706:	50                   	push   %eax
5a3707:	55                   	push   %ebp
5a3708:	8b 6c 24 20          	mov    0x20(%esp),%ebp
5a370c:	55                   	push   %ebp
5a370d:	e8 7e 77 00 00       	call   0x5aae90
5a3712:	83 c4 10             	add    $0x10,%esp
5a3715:	85 c0                	test   %eax,%eax
5a3717:	75 6f                	jne    0x5a3788
5a3719:	e8 62 dc ef ff       	call   0x4a1380
5a371e:	8b c8                	mov    %eax,%ecx
5a3720:	81 e1 00 00 00 ff    	and    $0xff000000,%ecx
5a3726:	81 f9 00 00 00 03    	cmp    $0x3000000,%ecx
5a372c:	75 4c                	jne    0x5a377a
5a372e:	25 ff 0f 00 00       	and    $0xfff,%eax
5a3733:	83 f8 74             	cmp    $0x74,%eax
5a3736:	75 42                	jne    0x5a377a
5a3738:	e8 d3 d9 ef ff       	call   0x4a1110
5a373d:	68 8d 00 00 00       	push   $0x8d
5a3742:	68 40 c1 6c 00       	push   $0x6cc140
5a3747:	6a 6e                	push   $0x6e
5a3749:	68 a4 00 00 00       	push   $0xa4
5a374e:	6a 10                	push   $0x10
5a3750:	e8 4b dd ef ff       	call   0x4a14a0
5a3755:	83 c4 14             	add    $0x14,%esp
5a3758:	33 db                	xor    %ebx,%ebx
5a375a:	56                   	push   %esi
5a375b:	e8 f0 45 f3 ff       	call   0x4d7d50
5a3760:	83 c4 04             	add    $0x4,%esp
5a3763:	5d                   	pop    %ebp
5a3764:	85 ff                	test   %edi,%edi
5a3766:	74 09                	je     0x5a3771
5a3768:	57                   	push   %edi
5a3769:	e8 22 46 f3 ff       	call   0x4d7d90
5a376e:	83 c4 04             	add    $0x4,%esp
5a3771:	5f                   	pop    %edi
5a3772:	5e                   	pop    %esi
5a3773:	8b c3                	mov    %ebx,%eax
5a3775:	5b                   	pop    %ebx
5a3776:	83 c4 0c             	add    $0xc,%esp
5a3779:	c3                   	ret
5a377a:	68 90 00 00 00       	push   $0x90
5a377f:	68 40 c1 6c 00       	push   $0x6cc140
5a3784:	6a 03                	push   $0x3
5a3786:	eb c1                	jmp    0x5a3749
5a3788:	83 7d 04 00          	cmpl   $0x0,0x4(%ebp)
5a378c:	7e 10                	jle    0x5a379e
5a378e:	8b 45 00             	mov    0x0(%ebp),%eax
5a3791:	c7 44 24 14 01 00 00 	movl   $0x1,0x14(%esp)
5a3798:	00
5a3799:	f6 00 01             	testb  $0x1,(%eax)
5a379c:	75 08                	jne    0x5a37a6
5a379e:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
5a37a5:	00
5a37a6:	8b 03                	mov    (%ebx),%eax
5a37a8:	56                   	push   %esi
5a37a9:	55                   	push   %ebp
5a37aa:	8b 6c 24 38          	mov    0x38(%esp),%ebp
5a37ae:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a37b4:	55                   	push   %ebp
5a37b5:	ff 74 24 1c          	push   0x1c(%esp)
5a37b9:	53                   	push   %ebx
5a37ba:	ff d0                	call   *%eax
5a37bc:	83 c4 14             	add    $0x14,%esp
5a37bf:	85 c0                	test   %eax,%eax
5a37c1:	74 95                	je     0x5a3758
5a37c3:	8b 44 24 18          	mov    0x18(%esp),%eax
5a37c7:	39 44 24 14          	cmp    %eax,0x14(%esp)
5a37cb:	74 17                	je     0x5a37e4
5a37cd:	8b 44 24 10          	mov    0x10(%esp),%eax
5a37d1:	55                   	push   %ebp
5a37d2:	50                   	push   %eax
5a37d3:	50                   	push   %eax
5a37d4:	e8 27 69 00 00       	call   0x5aa100
5a37d9:	83 c4 0c             	add    $0xc,%esp
5a37dc:	85 c0                	test   %eax,%eax
5a37de:	0f 84 74 ff ff ff    	je     0x5a3758
5a37e4:	56                   	push   %esi
5a37e5:	ff 74 24 14          	push   0x14(%esp)
5a37e9:	55                   	push   %ebp
5a37ea:	ff 74 24 30          	push   0x30(%esp)
5a37ee:	53                   	push   %ebx
5a37ef:	e8 1c 8c fd ff       	call   0x57c410
5a37f4:	33 db                	xor    %ebx,%ebx
5a37f6:	83 c4 14             	add    $0x14,%esp
5a37f9:	85 c0                	test   %eax,%eax
5a37fb:	b9 01 00 00 00       	mov    $0x1,%ecx
5a3800:	0f 45 d9             	cmovne %ecx,%ebx
5a3803:	e9 52 ff ff ff       	jmp    0x5a375a
5a3808:	cc                   	int3
5a3809:	cc                   	int3
5a380a:	cc                   	int3
5a380b:	cc                   	int3
5a380c:	cc                   	int3