4591fe:	50                   	push   %eax
4591ff:	e8 40 d3 fa ff       	call   0x406544
459204:	8b 45 f8             	mov    -0x8(%ebp),%eax
459207:	c7 40 0c 01 00 00 00 	movl   $0x1,0xc(%eax)
45920e:	e9 05 01 00 00       	jmp    0x459318
459213:	55                   	push   %ebp
459214:	e8 97 fe ff ff       	call   0x4590b0
459219:	59                   	pop    %ecx
45921a:	8b 45 fc             	mov    -0x4(%ebp),%eax
45921d:	80 b8 2f 02 00 00 02 	cmpb   $0x2,0x22f(%eax)
459224:	0f 85 ee 00 00 00    	jne    0x459318
45922a:	8b 45 fc             	mov    -0x4(%ebp),%eax
45922d:	e8 a6 03 00 00       	call   0x4595d8
459232:	85 c0                	test   %eax,%eax
459234:	74 0f                	je     0x459245
459236:	55                   	push   %ebp
459237:	e8 c0 fe ff ff       	call   0x4590fc
45923c:	59                   	pop    %ecx
45923d:	84 c0                	test   %al,%al
45923f:	74 04                	je     0x459245
459241:	33 d2                	xor    %edx,%edx
459243:	eb 02                	jmp    0x459247
459245:	b2 01                	mov    $0x1,%dl
459247:	8b 45 fc             	mov    -0x4(%ebp),%eax
45924a:	8b 80 54 02 00 00    	mov    0x254(%eax),%eax
459250:	e8 c7 d1 ff ff       	call   0x45641c
459255:	e9 be 00 00 00       	jmp    0x459318
45925a:	8b 45 f8             	mov    -0x8(%ebp),%eax
45925d:	8b 40 04             	mov    0x4(%eax),%eax
459260:	89 45 f4             	mov    %eax,-0xc(%ebp)
459263:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
459267:	75 19                	jne    0x459282
459269:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45926c:	50                   	push   %eax
45926d:	8b 45 fc             	mov    -0x4(%ebp),%eax
459270:	8b 80 54 02 00 00    	mov    0x254(%eax),%eax
459276:	50                   	push   %eax
459277:	e8 a8 d1 fa ff       	call   0x406424
45927c:	8b 55 f8             	mov    -0x8(%ebp),%edx
45927f:	89 42 04             	mov    %eax,0x4(%edx)
459282:	33 c0                	xor    %eax,%eax
459284:	55                   	push   %ebp
459285:	68 0a 93 45 00       	push   $0x45930a
45928a:	64 ff 30             	push   %fs:(%eax)
45928d:	64 89 20             	mov    %esp,%fs:(%eax)
459290:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
459294:	75 42                	jne    0x4592d8
459296:	8d 45 a4             	lea    -0x5c(%ebp),%eax
459299:	50                   	push   %eax
45929a:	8b 45 fc             	mov    -0x4(%ebp),%eax
45929d:	8b 80 54 02 00 00    	mov    0x254(%eax),%eax
4592a3:	50                   	push   %eax
4592a4:	e8 13 d4 fa ff       	call   0x4066bc
4592a9:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
4592ac:	8d 55 a4             	lea    -0x5c(%ebp),%edx
4592af:	8b 45 fc             	mov    -0x4(%ebp),%eax
4592b2:	e8 95 61 fe ff       	call   0x43f44c
4592b7:	8b 45 8c             	mov    -0x74(%ebp),%eax
4592ba:	89 45 a4             	mov    %eax,-0x5c(%ebp)
4592bd:	8b 45 90             	mov    -0x70(%ebp),%eax
4592c0:	89 45 a8             	mov    %eax,-0x58(%ebp)
4592c3:	8b 4d a8             	mov    -0x58(%ebp),%ecx
4592c6:	f7 d9                	neg    %ecx
4592c8:	8b 55 a4             	mov    -0x5c(%ebp),%edx
4592cb:	f7 da                	neg    %edx
4592cd:	8b 45 f8             	mov    -0x8(%ebp),%eax
4592d0:	8b 40 04             	mov    0x4(%eax),%eax
4592d3:	e8 6c 4f fe ff       	call   0x43e244
4592d8:	8b 55 f8             	mov    -0x8(%ebp),%edx
4592db:	8b 45 fc             	mov    -0x4(%ebp),%eax
4592de:	e8 c1 aa fe ff       	call   0x443da4
4592e3:	33 c0                	xor    %eax,%eax
4592e5:	5a                   	pop    %edx
4592e6:	59                   	pop    %ecx
4592e7:	59                   	pop    %ecx
4592e8:	64 89 10             	mov    %edx,%fs:(%eax)
4592eb:	68 18 93 45 00       	push   $0x459318
4592f0:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4592f4:	75 13                	jne    0x459309
4592f6:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4592f9:	50                   	push   %eax
4592fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4592fd:	8b 80 54 02 00 00    	mov    0x254(%eax),%eax
459303:	50                   	push   %eax
459304:	e8 1b d2 fa ff       	call   0x406524
459309:	c3                   	ret
45930a:	e9 8d a6 fa ff       	jmp    0x40399c
45930f:	eb df                	jmp    0x4592f0
459311:	55                   	push   %ebp
459312:	e8 99 fd ff ff       	call   0x4590b0
459317:	59                   	pop    %ecx
459318:	8b e5                	mov    %ebp,%esp
45931a:	5d                   	pop    %ebp
45931b:	c3                   	ret
45931c:	53                   	push   %ebx
45931d:	56                   	push   %esi
45931e:	57                   	push   %edi
45931f:	83 c4 f0             	add    $0xfffffff0,%esp
459322:	8b f1                	mov    %ecx,%esi
459324:	8b d8                	mov    %eax,%ebx
459326:	8b ce                	mov    %esi,%ecx
459328:	8b c3                	mov    %ebx,%eax
45932a:	e8 b5 e2 ff ff       	call   0x4575e4
45932f:	8b 83 54 02 00 00    	mov    0x254(%ebx),%eax
459335:	85 c0                	test   %eax,%eax
459337:	74 47                	je     0x459380
459339:	6a 14                	push   $0x14
45933b:	8b 4e 0c             	mov    0xc(%esi),%ecx
45933e:	8b 7e 04             	mov    0x4(%esi),%edi
459341:	2b cf                	sub    %edi,%ecx
459343:	51                   	push   %ecx
459344:	8b 4e 08             	mov    0x8(%esi),%ecx
459347:	8b 16                	mov    (%esi),%edx
459349:	2b ca                	sub    %edx,%ecx
45934b:	51                   	push   %ecx
45934c:	57                   	push   %edi
45934d:	52                   	push   %edx
45934e:	6a 01                	push   $0x1
459350:	50                   	push   %eax
459351:	e8 4e d5 fa ff       	call   0x4068a4
459356:	80 bb 2f 02 00 00 02 	cmpb   $0x2,0x22f(%ebx)
45935d:	75 21                	jne    0x459380
45935f:	54                   	push   %esp
459360:	8b 83 54 02 00 00    	mov    0x254(%ebx),%eax
459366:	50                   	push   %eax
459367:	e8 10 d2 fa ff       	call   0x40657c
45936c:	85 c0                	test   %eax,%eax
45936e:	74 10                	je     0x459380
459370:	6a ff                	push   $0xffffffff
459372:	6a 00                	push   $0x0
459374:	8b 83 54 02 00 00    	mov    0x254(%ebx),%eax
45937a:	50                   	push   %eax
45937b:	e8 7c d3 fa ff       	call   0x4066fc
459380:	83 c4 10             	add    $0x10,%esp
459383:	5f                   	pop    %edi
459384:	5e                   	pop    %esi
459385:	5b                   	pop    %ebx
459386:	c3                   	ret
459387:	90                   	nop
459388:	53                   	push   %ebx
459389:	56                   	push   %esi
45938a:	57                   	push   %edi
45938b:	51                   	push   %ecx
45938c:	8b d8                	mov    %eax,%ebx
45938e:	8b c3                	mov    %ebx,%eax
459390:	e8 eb e8 ff ff       	call   0x457c80
459395:	8b c3                	mov    %ebx,%eax
459397:	e8 58 d0 fe ff       	call   0x4463f4
45939c:	84 c0                	test   %al,%al
45939e:	74 3d                	je     0x4593dd
4593a0:	6a ec                	push   $0xffffffec
4593a2:	8b c3                	mov    %ebx,%eax
4593a4:	e8 47 cd fe ff       	call   0x4460f0
4593a9:	50                   	push   %eax
4593aa:	e8 fd d2 fa ff       	call   0x4066ac
4593af:	25 ff ef ff ff       	and    $0xffffefff,%eax
4593b4:	25 ff df ff ff       	and    $0xffffdfff,%eax
4593b9:	25 ff bf ff ff       	and    $0xffffbfff,%eax
4593be:	89 04 24             	mov    %eax,(%esp)
4593c1:	8b d4                	mov    %esp,%edx
4593c3:	8b c3                	mov    %ebx,%eax
4593c5:	e8 4a 9b fe ff       	call   0x442f14
4593ca:	8b 04 24             	mov    (%esp),%eax
4593cd:	50                   	push   %eax
4593ce:	6a ec                	push   $0xffffffec
4593d0:	8b c3                	mov    %ebx,%eax
4593d2:	e8 19 cd fe ff       	call   0x4460f0
4593d7:	50                   	push   %eax
4593d8:	e8 b7 d4 fa ff       	call   0x406894
4593dd:	8b c3                	mov    %ebx,%eax
4593df:	e8 1c 11 fc ff       	call   0x41a500
4593e4:	8b f8                	mov    %eax,%edi
4593e6:	4f                   	dec    %edi
4593e7:	85 ff                	test   %edi,%edi
4593e9:	7c 2d                	jl     0x459418
4593eb:	47                   	inc    %edi
4593ec:	33 f6                	xor    %esi,%esi
4593ee:	8b d6                	mov    %esi,%edx
4593f0:	8b c3                	mov    %ebx,%eax
4593f2:	e8 dd 10 fc ff       	call   0x41a4d4
4593f7:	8b 15 cc e7 44 00    	mov    0x44e7cc,%edx
4593fd:	e8 d2 9f fa ff       	call   0x4033d4
459402:	84 c0                	test   %al,%al
459404:	74 0e                	je     0x459414
459406:	8b d6                	mov    %esi,%edx
459408:	8b c3                	mov    %ebx,%eax
45940a:	e8 c5 10 fc ff       	call   0x41a4d4
45940f:	e8 cc a4 ff ff       	call   0x4538e0
459414:	46                   	inc    %esi
459415:	4f                   	dec    %edi
459416:	75 d6                	jne    0x4593ee
459418:	5a                   	pop    %edx
459419:	5f                   	pop    %edi
45941a:	5e                   	pop    %esi
45941b:	5b                   	pop    %ebx
45941c:	c3                   	ret
45941d:	8d 40 00             	lea    0x0(%eax),%eax
459420:	55                   	push   %ebp
459421:	8b ec                	mov    %esp,%ebp
459423:	51                   	push   %ecx
459424:	89 45 fc             	mov    %eax,-0x4(%ebp)
459427:	8b 45 fc             	mov    -0x4(%ebp),%eax
45942a:	80 b8 44 02 00 00 00 	cmpb   $0x0,0x244(%eax)
459431:	75 71                	jne    0x4594a4
459433:	8b 45 fc             	mov    -0x4(%ebp),%eax
459436:	c6 80 44 02 00 00 01 	movb   $0x1,0x244(%eax)
45943d:	33 d2                	xor    %edx,%edx
45943f:	55                   	push   %ebp
459440:	68 9d 94 45 00       	push   $0x45949d
459445:	64 ff 32             	push   %fs:(%edx)
459448:	64 89 22             	mov    %esp,%fs:(%edx)
45944b:	8b 45 fc             	mov    -0x4(%ebp),%eax
45944e:	80 78 60 00          	cmpb   $0x0,0x60(%eax)
459452:	74 31                	je     0x459485
459454:	8b 45 fc             	mov    -0x4(%ebp),%eax
459457:	8b 40 30             	mov    0x30(%eax),%eax
45945a:	85 c0                	test   %eax,%eax
45945c:	75 12                	jne    0x459470
45945e:	a1 b8 eb 46 00       	mov    0x46ebb8,%eax
459463:	8a 50 34             	mov    0x34(%eax),%dl
459466:	8b 45 fc             	mov    -0x4(%ebp),%eax
459469:	8b 08                	mov    (%eax),%ecx
45946b:	ff 51 70             	call   *0x70(%ecx)
45946e:	eb 0b                	jmp    0x45947b
459470:	8a 50 5f             	mov    0x5f(%eax),%dl
459473:	8b 45 fc             	mov    -0x4(%ebp),%eax
459476:	8b 08                	mov    (%eax),%ecx
459478:	ff 51 70             	call   *0x70(%ecx)
45947b:	b2 01                	mov    $0x1,%dl
45947d:	8b 45 fc             	mov    -0x4(%ebp),%eax
459480:	8b 08                	mov    (%eax),%ecx
459482:	ff 51 6c             	call   *0x6c(%ecx)
459485:	33 c0                	xor    %eax,%eax
459487:	5a                   	pop    %edx
459488:	59                   	pop    %ecx
459489:	59                   	pop    %ecx
45948a:	64 89 10             	mov    %edx,%fs:(%eax)
45948d:	68 a4 94 45 00       	push   $0x4594a4
459492:	8b 45 fc             	mov    -0x4(%ebp),%eax
459495:	c6 80 44 02 00 00 00 	movb   $0x0,0x244(%eax)
45949c:	c3                   	ret
45949d:	e9 fa a4 fa ff       	jmp    0x40399c
4594a2:	eb ee                	jmp    0x459492
4594a4:	59                   	pop    %ecx
4594a5:	5d                   	pop    %ebp
4594a6:	c3                   	ret
4594a7:	90                   	nop
4594a8:	53                   	push   %ebx
4594a9:	51                   	push   %ecx
4594aa:	88 14 24             	mov    %dl,(%esp)
4594ad:	8b d8                	mov    %eax,%ebx
4594af:	8a 04 24             	mov    (%esp),%al
4594b2:	3a 83 28 02 00 00    	cmp    0x228(%ebx),%al
4594b8:	74 16                	je     0x4594d0
4594ba:	8a 04 24             	mov    (%esp),%al
4594bd:	88 83 28 02 00 00    	mov    %al,0x228(%ebx)
4594c3:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
4594c7:	75 07                	jne    0x4594d0
4594c9:	8b c3                	mov    %ebx,%eax
4594cb:	e8 c0 a1 fe ff       	call   0x443690
4594d0:	5a                   	pop    %edx
4594d1:	5b                   	pop    %ebx
4594d2:	c3                   	ret
4594d3:	90                   	nop
4594d4:	56                   	push   %esi
4594d5:	8b f0                	mov    %eax,%esi
4594d7:	3a 96 29 02 00 00    	cmp    0x229(%esi),%dl
4594dd:	74 2a                	je     0x459509
4594df:	8b c2                	mov    %edx,%eax
4594e1:	88 86 29 02 00 00    	mov    %al,0x229(%esi)
4594e7:	2c 02                	sub    $0x2,%al
4594e9:	74 08                	je     0x4594f3
4594eb:	2c 03                	sub    $0x3,%al
4594ed:	74 04                	je     0x4594f3
4594ef:	33 d2                	xor    %edx,%edx
4594f1:	eb 02                	jmp    0x4594f5
4594f3:	b2 01                	mov    $0x1,%dl
4594f5:	8b c6                	mov    %esi,%eax
4594f7:	e8 64 e2 ff ff       	call   0x457760
4594fc:	f6 46 1c 10          	testb  $0x10,0x1c(%esi)
459500:	75 07                	jne    0x459509
459502:	8b c6                	mov    %esi,%eax
459504:	e8 87 a1 fe ff       	call   0x443690
459509:	5e                   	pop    %esi
45950a:	c3                   	ret
45950b:	90                   	nop
45950c:	53                   	push   %ebx
45950d:	56                   	push   %esi
45950e:	57                   	push   %edi
45950f:	83 c4 f0             	add    $0xfffffff0,%esp
459512:	8b f1                	mov    %ecx,%esi
459514:	8d 3c 24             	lea    (%esp),%edi
459517:	a5                   	movsl  %ds:(%esi),%es:(%edi)
459518:	a5                   	movsl  %ds:(%esi),%es:(%edi)
459519:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45951a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45951b:	8b d8                	mov    %eax,%ebx
45951d:	8b 7b 30             	mov    0x30(%ebx),%edi
459520:	8b b3 a0 00 00 00    	mov    0xa0(%ebx),%esi
459526:	8b cc                	mov    %esp,%ecx
459528:	8b c3                	mov    %ebx,%eax
45952a:	e8 dd 5b fe ff       	call   0x43f10c
45952f:	8b 43 30             	mov    0x30(%ebx),%eax
459532:	85 c0                	test   %eax,%eax
459534:	74 13                	je     0x459549
459536:	3b f8                	cmp    %eax,%edi
459538:	75 0f                	jne    0x459549
45953a:	3b b3 a0 00 00 00    	cmp    0xa0(%ebx),%esi
459540:	74 07                	je     0x459549
459542:	8b c3                	mov    %ebx,%eax
459544:	e8 47 a1 fe ff       	call   0x443690
459549:	83 c4 10             	add    $0x10,%esp
45954c:	5f                   	pop    %edi
45954d:	5e                   	pop    %esi
45954e:	5b                   	pop    %ebx
45954f:	c3                   	ret
459550:	53                   	push   %ebx
459551:	56                   	push   %esi
459552:	57                   	push   %edi
459553:	8b f9                	mov    %ecx,%edi
459555:	8b f2                	mov    %edx,%esi
459557:	8b d8                	mov    %eax,%ebx
459559:	3b b3 a0 00 00 00    	cmp    0xa0(%ebx),%esi
45955f:	74 34                	je     0x459595
459561:	85 f6                	test   %esi,%esi
459563:	74 0b                	je     0x459570
459565:	8b c3                	mov    %ebx,%eax
459567:	8b 10                	mov    (%eax),%edx
459569:	ff 52 54             	call   *0x54(%edx)
45956c:	84 c0                	test   %al,%al
45956e:	74 25                	je     0x459595
459570:	85 f6                	test   %esi,%esi
459572:	75 0e                	jne    0x459582
459574:	8a 83 80 02 00 00    	mov    0x280(%ebx),%al
45957a:	88 83 29 02 00 00    	mov    %al,0x229(%ebx)
459580:	eb 13                	jmp    0x459595
459582:	8a 83 29 02 00 00    	mov    0x229(%ebx),%al
459588:	88 83 80 02 00 00    	mov    %al,0x280(%ebx)
45958e:	c6 83 29 02 00 00 00 	movb   $0x0,0x229(%ebx)
459595:	8b cf                	mov    %edi,%ecx
459597:	8b d6                	mov    %esi,%edx
459599:	8b c3                	mov    %ebx,%eax
45959b:	e8 78 5c fe ff       	call   0x43f218
4595a0:	5f                   	pop    %edi
4595a1:	5e                   	pop    %esi
4595a2:	5b                   	pop    %ebx
4595a3:	c3                   	ret
4595a4:	53                   	push   %ebx
4595a5:	8b d8                	mov    %eax,%ebx
4595a7:	33 c0                	xor    %eax,%eax