4431d0:	57                   	push   %edi
4431d1:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4431d4:	89 55 f8             	mov    %edx,-0x8(%ebp)
4431d7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4431da:	c6 45 f3 01          	movb   $0x1,-0xd(%ebp)
4431de:	8b 45 fc             	mov    -0x4(%ebp),%eax
4431e1:	e8 e2 f7 ff ff       	call   0x4429c8
4431e6:	84 c0                	test   %al,%al
4431e8:	0f 84 9c 01 00 00    	je     0x44338a
4431ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
4431f1:	80 78 5b 05          	cmpb   $0x5,0x5b(%eax)
4431f5:	0f 84 8f 01 00 00    	je     0x44338a
4431fb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4431fe:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
443202:	74 10                	je     0x443214
443204:	8b 45 fc             	mov    -0x4(%ebp),%eax
443207:	e8 f8 c2 ff ff       	call   0x43f504
44320c:	85 c0                	test   %eax,%eax
44320e:	0f 8e 76 01 00 00    	jle    0x44338a
443214:	8d 55 d8             	lea    -0x28(%ebp),%edx
443217:	8b 45 fc             	mov    -0x4(%ebp),%eax
44321a:	8b 08                	mov    (%eax),%ecx
44321c:	ff 91 b4 00 00 00    	call   *0xb4(%ecx)
443222:	8d 55 c8             	lea    -0x38(%ebp),%edx
443225:	8b 45 fc             	mov    -0x4(%ebp),%eax
443228:	8b 08                	mov    (%eax),%ecx
44322a:	ff 51 44             	call   *0x44(%ecx)
44322d:	8d 55 c8             	lea    -0x38(%ebp),%edx
443230:	8b 45 fc             	mov    -0x4(%ebp),%eax
443233:	8b 08                	mov    (%eax),%ecx
443235:	ff 91 8c 00 00 00    	call   *0x8c(%ecx)
44323b:	8b 45 fc             	mov    -0x4(%ebp),%eax
44323e:	e8 29 be ff ff       	call   0x43f06c
443243:	33 c9                	xor    %ecx,%ecx
443245:	55                   	push   %ebp
443246:	68 f7 32 44 00       	push   $0x4432f7
44324b:	64 ff 31             	push   %fs:(%ecx)
44324e:	64 89 21             	mov    %esp,%fs:(%ecx)
443251:	8b 45 fc             	mov    -0x4(%ebp),%eax
443254:	e8 ab c2 ff ff       	call   0x43f504
443259:	8b f0                	mov    %eax,%esi
44325b:	4e                   	dec    %esi
44325c:	85 f6                	test   %esi,%esi
44325e:	7c 79                	jl     0x4432d9
443260:	46                   	inc    %esi
443261:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
443268:	8b 55 ec             	mov    -0x14(%ebp),%edx
44326b:	8b 45 fc             	mov    -0x4(%ebp),%eax
44326e:	e8 55 c2 ff ff       	call   0x43f4c8
443273:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
443277:	75 0c                	jne    0x443285
443279:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
44327d:	74 54                	je     0x4432d3
44327f:	f6 40 51 04          	testb  $0x4,0x51(%eax)
443283:	75 4e                	jne    0x4432d3
443285:	8b 55 fc             	mov    -0x4(%ebp),%edx
443288:	8a 52 5b             	mov    0x5b(%edx),%dl
44328b:	8b ca                	mov    %edx,%ecx
44328d:	84 c9                	test   %cl,%cl
44328f:	74 08                	je     0x443299
443291:	80 c1 fd             	add    $0xfd,%cl
443294:	80 e9 02             	sub    $0x2,%cl
443297:	73 08                	jae    0x4432a1
443299:	8b 7d d8             	mov    -0x28(%ebp),%edi
44329c:	2b 7d c8             	sub    -0x38(%ebp),%edi
44329f:	eb 02                	jmp    0x4432a3
4432a1:	33 ff                	xor    %edi,%edi
4432a3:	80 ea 03             	sub    $0x3,%dl
4432a6:	73 0b                	jae    0x4432b3
4432a8:	8b 55 dc             	mov    -0x24(%ebp),%edx
4432ab:	2b 55 cc             	sub    -0x34(%ebp),%edx
4432ae:	89 55 e8             	mov    %edx,-0x18(%ebp)
4432b1:	eb 05                	jmp    0x4432b8
4432b3:	33 d2                	xor    %edx,%edx
4432b5:	89 55 e8             	mov    %edx,-0x18(%ebp)
4432b8:	8b 50 48             	mov    0x48(%eax),%edx
4432bb:	52                   	push   %edx
4432bc:	8b 50 4c             	mov    0x4c(%eax),%edx
4432bf:	52                   	push   %edx
4432c0:	8b 48 44             	mov    0x44(%eax),%ecx
4432c3:	2b 4d e8             	sub    -0x18(%ebp),%ecx
4432c6:	8b 50 40             	mov    0x40(%eax),%edx
4432c9:	2b d7                	sub    %edi,%edx
4432cb:	8b 18                	mov    (%eax),%ebx
4432cd:	ff 93 84 00 00 00    	call   *0x84(%ebx)
4432d3:	ff 45 ec             	incl   -0x14(%ebp)
4432d6:	4e                   	dec    %esi
4432d7:	75 8f                	jne    0x443268
4432d9:	33 c0                	xor    %eax,%eax
4432db:	5a                   	pop    %edx
4432dc:	59                   	pop    %ecx
4432dd:	59                   	pop    %ecx
4432de:	64 89 10             	mov    %edx,%fs:(%eax)
4432e1:	68 fe 32 44 00       	push   $0x4432fe
4432e6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4432e9:	66 83 60 54 ef       	andw   $0xffef,0x54(%eax)
4432ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
4432f1:	e8 7e bd ff ff       	call   0x43f074
4432f6:	c3                   	ret
4432f7:	e9 6c 08 fc ff       	jmp    0x403b68
4432fc:	eb e8                	jmp    0x4432e6
4432fe:	8b 45 fc             	mov    -0x4(%ebp),%eax
443301:	8a 50 5b             	mov    0x5b(%eax),%dl
443304:	8b c2                	mov    %edx,%eax
443306:	84 c0                	test   %al,%al
443308:	74 06                	je     0x443310
44330a:	04 fd                	add    $0xfd,%al
44330c:	2c 02                	sub    $0x2,%al
44330e:	73 37                	jae    0x443347
443310:	8b 45 e0             	mov    -0x20(%ebp),%eax
443313:	2b 45 d8             	sub    -0x28(%ebp),%eax
443316:	85 c0                	test   %eax,%eax
443318:	7e 26                	jle    0x443340
44331a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44331d:	03 41 48             	add    0x48(%ecx),%eax
443320:	8b 4d d0             	mov    -0x30(%ebp),%ecx
443323:	2b 4d c8             	sub    -0x38(%ebp),%ecx
443326:	2b c1                	sub    %ecx,%eax
443328:	8b 4d f8             	mov    -0x8(%ebp),%ecx
44332b:	89 01                	mov    %eax,(%ecx)
44332d:	80 fa 04             	cmp    $0x4,%dl
443330:	75 15                	jne    0x443347
443332:	8b 45 fc             	mov    -0x4(%ebp),%eax
443335:	66 be d0 ff          	mov    $0xffd0,%si
443339:	e8 aa 02 fc ff       	call   0x4035e8
44333e:	eb 07                	jmp    0x443347
443340:	8b 45 f8             	mov    -0x8(%ebp),%eax
443343:	33 d2                	xor    %edx,%edx
443345:	89 10                	mov    %edx,(%eax)
443347:	8b 45 fc             	mov    -0x4(%ebp),%eax
44334a:	8a 50 5b             	mov    0x5b(%eax),%dl
44334d:	8b c2                	mov    %edx,%eax
44334f:	2c 03                	sub    $0x3,%al
443351:	73 37                	jae    0x44338a
443353:	8b 45 e4             	mov    -0x1c(%ebp),%eax
443356:	2b 45 dc             	sub    -0x24(%ebp),%eax
443359:	85 c0                	test   %eax,%eax
44335b:	7e 26                	jle    0x443383
44335d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
443360:	03 41 4c             	add    0x4c(%ecx),%eax
443363:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
443366:	2b 4d cc             	sub    -0x34(%ebp),%ecx
443369:	2b c1                	sub    %ecx,%eax
44336b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
44336e:	89 01                	mov    %eax,(%ecx)
443370:	80 fa 02             	cmp    $0x2,%dl
443373:	75 15                	jne    0x44338a
443375:	8b 45 fc             	mov    -0x4(%ebp),%eax
443378:	66 be d0 ff          	mov    $0xffd0,%si
44337c:	e8 67 02 fc ff       	call   0x4035e8
443381:	eb 07                	jmp    0x44338a
443383:	8b 45 f4             	mov    -0xc(%ebp),%eax
443386:	33 d2                	xor    %edx,%edx
443388:	89 10                	mov    %edx,(%eax)
44338a:	8a 45 f3             	mov    -0xd(%ebp),%al
44338d:	5f                   	pop    %edi
44338e:	5e                   	pop    %esi
44338f:	5b                   	pop    %ebx
443390:	8b e5                	mov    %ebp,%esp
443392:	5d                   	pop    %ebp
443393:	c3                   	ret
443394:	53                   	push   %ebx
443395:	56                   	push   %esi
443396:	57                   	push   %edi
443397:	8b f2                	mov    %edx,%esi
443399:	8b d8                	mov    %eax,%ebx
44339b:	8b d6                	mov    %esi,%edx
44339d:	8b c3                	mov    %ebx,%eax
44339f:	8b 08                	mov    (%eax),%ecx
4433a1:	ff 51 f0             	call   *-0x10(%ecx)
4433a4:	8b 46 08             	mov    0x8(%esi),%eax
4433a7:	8b f0                	mov    %eax,%esi
4433a9:	8b 83 6c 01 00 00    	mov    0x16c(%ebx),%eax
4433af:	f7 d8                	neg    %eax
4433b1:	50                   	push   %eax
4433b2:	8b 93 6c 01 00 00    	mov    0x16c(%ebx),%edx
4433b8:	f7 da                	neg    %edx
4433ba:	50                   	push   %eax
4433bb:	8b fe                	mov    %esi,%edi
4433bd:	57                   	push   %edi
4433be:	e8 3d 3a fc ff       	call   0x406e00
4433c3:	80 bb 65 01 00 00 00 	cmpb   $0x0,0x165(%ebx)
4433ca:	74 51                	je     0x44341d
4433cc:	33 c0                	xor    %eax,%eax
4433ce:	80 bb 63 01 00 00 00 	cmpb   $0x0,0x163(%ebx)
4433d5:	74 06                	je     0x4433dd
4433d7:	03 83 68 01 00 00    	add    0x168(%ebx),%eax
4433dd:	80 bb 64 01 00 00 00 	cmpb   $0x0,0x164(%ebx)
4433e4:	74 06                	je     0x4433ec
4433e6:	03 83 68 01 00 00    	add    0x168(%ebx),%eax
4433ec:	8b f7                	mov    %edi,%esi
4433ee:	f6 83 62 01 00 00 01 	testb  $0x1,0x162(%ebx)
4433f5:	74 02                	je     0x4433f9
4433f7:	01 06                	add    %eax,(%esi)
4433f9:	f6 83 62 01 00 00 02 	testb  $0x2,0x162(%ebx)
443400:	74 03                	je     0x443405
443402:	01 46 04             	add    %eax,0x4(%esi)
443405:	f6 83 62 01 00 00 04 	testb  $0x4,0x162(%ebx)
44340c:	74 03                	je     0x443411
44340e:	29 46 08             	sub    %eax,0x8(%esi)
443411:	f6 83 62 01 00 00 08 	testb  $0x8,0x162(%ebx)
443418:	74 03                	je     0x44341d
44341a:	29 46 0c             	sub    %eax,0xc(%esi)
44341d:	5f                   	pop    %edi
44341e:	5e                   	pop    %esi
44341f:	5b                   	pop    %ebx
443420:	c3                   	ret
443421:	8d 40 00             	lea    0x0(%eax),%eax
443424:	55                   	push   %ebp
443425:	8b ec                	mov    %esp,%ebp
443427:	83 c4 c4             	add    $0xffffffc4,%esp
44342a:	53                   	push   %ebx
44342b:	56                   	push   %esi
44342c:	57                   	push   %edi
44342d:	89 55 f8             	mov    %edx,-0x8(%ebp)
443430:	89 45 fc             	mov    %eax,-0x4(%ebp)
443433:	8b 45 fc             	mov    -0x4(%ebp),%eax
443436:	80 b8 65 01 00 00 00 	cmpb   $0x0,0x165(%eax)
44343d:	75 10                	jne    0x44344f
44343f:	8b 45 fc             	mov    -0x4(%ebp),%eax
443442:	83 b8 6c 01 00 00 00 	cmpl   $0x0,0x16c(%eax)
443449:	0f 86 42 02 00 00    	jbe    0x443691
44344f:	8b 45 fc             	mov    -0x4(%ebp),%eax
443452:	e8 11 f3 ff ff       	call   0x442768
443457:	50                   	push   %eax
443458:	e8 6b 39 fc ff       	call   0x406dc8
44345d:	89 45 f4             	mov    %eax,-0xc(%ebp)
443460:	33 d2                	xor    %edx,%edx
443462:	55                   	push   %ebp
443463:	68 8a 36 44 00       	push   $0x44368a
443468:	64 ff 32             	push   %fs:(%edx)
44346b:	64 89 22             	mov    %esp,%fs:(%edx)
44346e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
443471:	50                   	push   %eax
443472:	8b 45 fc             	mov    -0x4(%ebp),%eax
443475:	e8 ee f2 ff ff       	call   0x442768
44347a:	50                   	push   %eax
44347b:	e8 30 38 fc ff       	call   0x406cb0
443480:	8d 45 d4             	lea    -0x2c(%ebp),%eax
443483:	50                   	push   %eax
443484:	8b 45 fc             	mov    -0x4(%ebp),%eax
443487:	e8 dc f2 ff ff       	call   0x442768
44348c:	50                   	push   %eax
44348d:	e8 4e 39 fc ff       	call   0x406de0
443492:	6a 02                	push   $0x2
443494:	8d 45 d4             	lea    -0x2c(%ebp),%eax
443497:	50                   	push   %eax
443498:	8b 45 fc             	mov    -0x4(%ebp),%eax
44349b:	e8 c8 f2 ff ff       	call   0x442768
4434a0:	50                   	push   %eax
4434a1:	6a 00                	push   $0x0
4434a3:	e8 f8 39 fc ff       	call   0x406ea0
4434a8:	8b 45 d8             	mov    -0x28(%ebp),%eax
4434ab:	f7 d8                	neg    %eax
4434ad:	50                   	push   %eax
4434ae:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4434b1:	f7 d8                	neg    %eax
4434b3:	50                   	push   %eax
4434b4:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4434b7:	50                   	push   %eax
4434b8:	e8 0b 3a fc ff       	call   0x406ec8
4434bd:	8b 45 f0             	mov    -0x10(%ebp),%eax
4434c0:	50                   	push   %eax
4434c1:	8b 45 ec             	mov    -0x14(%ebp),%eax
4434c4:	50                   	push   %eax
4434c5:	8b 45 e8             	mov    -0x18(%ebp),%eax
4434c8:	50                   	push   %eax
4434c9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4434cc:	50                   	push   %eax
4434cd:	8b 45 f4             	mov    -0xc(%ebp),%eax
4434d0:	50                   	push   %eax
4434d1:	e8 2a 35 fc ff       	call   0x406a00
4434d6:	8d 75 d4             	lea    -0x2c(%ebp),%esi
4434d9:	8d 7d c4             	lea    -0x3c(%ebp),%edi
4434dc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434dd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434de:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434df:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434e0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4434e3:	8b 80 6c 01 00 00    	mov    0x16c(%eax),%eax
4434e9:	50                   	push   %eax
4434ea:	50                   	push   %eax
4434eb:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4434ee:	50                   	push   %eax
4434ef:	e8 0c 39 fc ff       	call   0x406e00
4434f4:	8d 75 e4             	lea    -0x1c(%ebp),%esi
4434f7:	8d 7d d4             	lea    -0x2c(%ebp),%edi
4434fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434fb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434fc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434fd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4434fe:	8b 45 fc             	mov    -0x4(%ebp),%eax
443501:	80 b8 65 01 00 00 00 	cmpb   $0x0,0x165(%eax)
443508:	0f 84 08 01 00 00    	je     0x443616
44350e:	33 db                	xor    %ebx,%ebx
443510:	8b 45 fc             	mov    -0x4(%ebp),%eax
443513:	80 b8 63 01 00 00 00 	cmpb   $0x0,0x163(%eax)
44351a:	74 09                	je     0x443525
44351c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44351f:	03 98 68 01 00 00    	add    0x168(%eax),%ebx
443525:	8b 45 fc             	mov    -0x4(%ebp),%eax
443528:	80 b8 64 01 00 00 00 	cmpb   $0x0,0x164(%eax)
44352f:	74 09                	je     0x44353a
443531:	8b 45 fc             	mov    -0x4(%ebp),%eax
443534:	03 98 68 01 00 00    	add    0x168(%eax),%ebx
44353a:	6a f0                	push   $0xfffffff0
44353c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44353f:	e8 24 f2 ff ff       	call   0x442768
443544:	50                   	push   %eax
443545:	e8 86 38 fc ff       	call   0x406dd0
44354a:	8b f0                	mov    %eax,%esi
44354c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44354f:	f6 80 62 01 00 00 01 	testb  $0x1,0x162(%eax)
443556:	74 03                	je     0x44355b
443558:	29 5d d4             	sub    %ebx,-0x2c(%ebp)
44355b:	8b 45 fc             	mov    -0x4(%ebp),%eax
44355e:	f6 80 62 01 00 00 02 	testb  $0x2,0x162(%eax)
443565:	74 03                	je     0x44356a
443567:	29 5d d8             	sub    %ebx,-0x28(%ebp)
44356a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44356d:	f6 80 62 01 00 00 04 	testb  $0x4,0x162(%eax)
443574:	74 03                	je     0x443579
443576:	01 5d dc             	add    %ebx,-0x24(%ebp)
443579:	f7 c6 00 00 20 00    	test   $0x200000,%esi
44357f:	74 0e                	je     0x44358f
443581:	6a 14                	push   $0x14
443583:	a1 fc b0 49 00       	mov    0x49b0fc,%eax
443588:	8b 00                	mov    (%eax),%eax
44358a:	ff d0                	call   *%eax
44358c:	01 45 dc             	add    %eax,-0x24(%ebp)
44358f:	8b 45 fc             	mov    -0x4(%ebp),%eax
443592:	f6 80 62 01 00 00 08 	testb  $0x8,0x162(%eax)
443599:	74 03                	je     0x44359e
44359b:	01 5d e0             	add    %ebx,-0x20(%ebp)
44359e:	f7 c6 00 00 10 00    	test   $0x100000,%esi
4435a4:	74 0e                	je     0x4435b4
4435a6:	6a 15                	push   $0x15
4435a8:	a1 fc b0 49 00       	mov    0x49b0fc,%eax
4435ad:	8b 00                	mov    (%eax),%eax
4435af:	ff d0                	call   *%eax
4435b1:	01 45 e0             	add    %eax,-0x20(%ebp)
4435b4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4435b7:	0f b6 80 62 01 00 00 	movzbl 0x162(%eax),%eax
4435be:	8b 55 fc             	mov    -0x4(%ebp),%edx
4435c1:	0f b6 92 65 01 00 00 	movzbl 0x165(%edx),%edx
4435c8:	0b 04 95 30 dd 48 00 	or     0x48dd30(,%edx,4),%eax
4435cf:	8b 55 fc             	mov    -0x4(%ebp),%edx
4435d2:	0f b6 92 a5 01 00 00 	movzbl 0x1a5(%edx),%edx
4435d9:	0b 04 95 40 dd 48 00 	or     0x48dd40(,%edx,4),%eax
4435e0:	0d 00 20 00 00       	or     $0x2000,%eax