440395:	8b 45 f8             	mov    -0x8(%ebp),%eax
440398:	8b 40 08             	mov    0x8(%eax),%eax
44039b:	48                   	dec    %eax
44039c:	85 c0                	test   %eax,%eax
44039e:	7c 6c                	jl     0x44040c
4403a0:	40                   	inc    %eax
4403a1:	89 45 f4             	mov    %eax,-0xc(%ebp)
4403a4:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4403ab:	8b 55 fc             	mov    -0x4(%ebp),%edx
4403ae:	8b 45 f8             	mov    -0x8(%ebp),%eax
4403b1:	e8 32 3c fd ff       	call   0x413fe8
4403b6:	89 45 f0             	mov    %eax,-0x10(%ebp)
4403b9:	8b 45 f0             	mov    -0x10(%ebp),%eax
4403bc:	e8 eb d3 fd ff       	call   0x41d7ac
4403c1:	84 c0                	test   %al,%al
4403c3:	74 3f                	je     0x440404
4403c5:	33 c0                	xor    %eax,%eax
4403c7:	55                   	push   %ebp
4403c8:	68 fd 03 44 00       	push   $0x4403fd
4403cd:	64 ff 30             	push   %fs:(%eax)
4403d0:	64 89 20             	mov    %esp,%fs:(%eax)
4403d3:	8b 45 f0             	mov    -0x10(%ebp),%eax
4403d6:	e8 d5 01 00 00       	call   0x4405b0
4403db:	e8 50 3c fc ff       	call   0x404030
4403e0:	e8 4b 3c fc ff       	call   0x404030
4403e5:	eb 44                	jmp    0x44042b
4403e7:	33 c0                	xor    %eax,%eax
4403e9:	5a                   	pop    %edx
4403ea:	59                   	pop    %ecx
4403eb:	59                   	pop    %ecx
4403ec:	64 89 10             	mov    %edx,%fs:(%eax)
4403ef:	68 04 04 44 00       	push   $0x440404
4403f4:	8b 45 f0             	mov    -0x10(%ebp),%eax
4403f7:	e8 0c d4 fd ff       	call   0x41d808
4403fc:	c3                   	ret
4403fd:	e9 4a 3b fc ff       	jmp    0x403f4c
440402:	eb f0                	jmp    0x4403f4
440404:	ff 45 fc             	incl   -0x4(%ebp)
440407:	ff 4d f4             	decl   -0xc(%ebp)
44040a:	75 9f                	jne    0x4403ab
44040c:	33 c0                	xor    %eax,%eax
44040e:	5a                   	pop    %edx
44040f:	59                   	pop    %ecx
440410:	59                   	pop    %ecx
440411:	64 89 10             	mov    %edx,%fs:(%eax)
440414:	68 2b 04 44 00       	push   $0x44042b
440419:	a1 34 1b 46 00       	mov    0x461b34,%eax
44041e:	e8 b5 3f fd ff       	call   0x4143d8
440423:	c3                   	ret
440424:	e9 23 3b fc ff       	jmp    0x403f4c
440429:	eb ee                	jmp    0x440419
44042b:	8b e5                	mov    %ebp,%esp
44042d:	5d                   	pop    %ebp
44042e:	c3                   	ret
44042f:	90                   	nop
440430:	55                   	push   %ebp
440431:	8b ec                	mov    %esp,%ebp
440433:	83 c4 f4             	add    $0xfffffff4,%esp
440436:	a1 34 1b 46 00       	mov    0x461b34,%eax
44043b:	e8 34 3f fd ff       	call   0x414374
440440:	89 45 f8             	mov    %eax,-0x8(%ebp)
440443:	33 c0                	xor    %eax,%eax
440445:	55                   	push   %ebp
440446:	68 ce 04 44 00       	push   $0x4404ce
44044b:	64 ff 30             	push   %fs:(%eax)
44044e:	64 89 20             	mov    %esp,%fs:(%eax)
440451:	8b 45 f8             	mov    -0x8(%ebp),%eax
440454:	8b 40 08             	mov    0x8(%eax),%eax
440457:	48                   	dec    %eax
440458:	83 f8 00             	cmp    $0x0,%eax
44045b:	7c 59                	jl     0x4404b6
44045d:	89 45 fc             	mov    %eax,-0x4(%ebp)
440460:	8b 55 fc             	mov    -0x4(%ebp),%edx
440463:	8b 45 f8             	mov    -0x8(%ebp),%eax
440466:	e8 7d 3b fd ff       	call   0x413fe8
44046b:	89 45 f4             	mov    %eax,-0xc(%ebp)
44046e:	8b 45 f4             	mov    -0xc(%ebp),%eax
440471:	e8 36 d3 fd ff       	call   0x41d7ac
440476:	84 c0                	test   %al,%al
440478:	74 33                	je     0x4404ad
44047a:	33 c0                	xor    %eax,%eax
44047c:	55                   	push   %ebp
44047d:	68 a6 04 44 00       	push   $0x4404a6
440482:	64 ff 30             	push   %fs:(%eax)
440485:	64 89 20             	mov    %esp,%fs:(%eax)
440488:	8b 45 f4             	mov    -0xc(%ebp),%eax
44048b:	e8 20 01 00 00       	call   0x4405b0
440490:	33 c0                	xor    %eax,%eax
440492:	5a                   	pop    %edx
440493:	59                   	pop    %ecx
440494:	59                   	pop    %ecx
440495:	64 89 10             	mov    %edx,%fs:(%eax)
440498:	68 ad 04 44 00       	push   $0x4404ad
44049d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4404a0:	e8 63 d3 fd ff       	call   0x41d808
4404a5:	c3                   	ret
4404a6:	e9 a1 3a fc ff       	jmp    0x403f4c
4404ab:	eb f0                	jmp    0x44049d
4404ad:	ff 4d fc             	decl   -0x4(%ebp)
4404b0:	83 7d fc ff          	cmpl   $0xffffffff,-0x4(%ebp)
4404b4:	75 aa                	jne    0x440460
4404b6:	33 c0                	xor    %eax,%eax
4404b8:	5a                   	pop    %edx
4404b9:	59                   	pop    %ecx
4404ba:	59                   	pop    %ecx
4404bb:	64 89 10             	mov    %edx,%fs:(%eax)
4404be:	68 d5 04 44 00       	push   $0x4404d5
4404c3:	a1 34 1b 46 00       	mov    0x461b34,%eax
4404c8:	e8 0b 3f fd ff       	call   0x4143d8
4404cd:	c3                   	ret
4404ce:	e9 79 3a fc ff       	jmp    0x403f4c
4404d3:	eb ee                	jmp    0x4404c3
4404d5:	8b e5                	mov    %ebp,%esp
4404d7:	5d                   	pop    %ebp
4404d8:	c3                   	ret
4404d9:	8d 40 00             	lea    0x0(%eax),%eax
4404dc:	53                   	push   %ebx
4404dd:	56                   	push   %esi
4404de:	e8 a1 36 fc ff       	call   0x403b84
4404e3:	8b da                	mov    %edx,%ebx
4404e5:	8b f0                	mov    %eax,%esi
4404e7:	8b c6                	mov    %esi,%eax
4404e9:	e8 c2 00 00 00       	call   0x4405b0
4404ee:	8b d3                	mov    %ebx,%edx
4404f0:	80 e2 fc             	and    $0xfc,%dl
4404f3:	8b c6                	mov    %esi,%eax
4404f5:	e8 9e cf fd ff       	call   0x41d498
4404fa:	84 db                	test   %bl,%bl
4404fc:	7e 07                	jle    0x440505
4404fe:	8b c6                	mov    %esi,%eax
440500:	e8 67 36 fc ff       	call   0x403b6c
440505:	5e                   	pop    %esi
440506:	5b                   	pop    %ebx
440507:	c3                   	ret
440508:	55                   	push   %ebp
440509:	8b ec                	mov    %esp,%ebp
44050b:	51                   	push   %ecx
44050c:	53                   	push   %ebx
44050d:	89 45 fc             	mov    %eax,-0x4(%ebp)
440510:	8b 45 fc             	mov    -0x4(%ebp),%eax
440513:	83 78 58 00          	cmpl   $0x0,0x58(%eax)
440517:	75 0d                	jne    0x440526
440519:	8b 45 fc             	mov    -0x4(%ebp),%eax
44051c:	e8 6b d4 fd ff       	call   0x41d98c
440521:	e9 84 00 00 00       	jmp    0x4405aa
440526:	8b 45 fc             	mov    -0x4(%ebp),%eax
440529:	83 78 5c 00          	cmpl   $0x0,0x5c(%eax)
44052d:	75 65                	jne    0x440594
44052f:	a1 34 1b 46 00       	mov    0x461b34,%eax
440534:	e8 3b 3e fd ff       	call   0x414374
440539:	8b d8                	mov    %eax,%ebx
44053b:	33 c0                	xor    %eax,%eax
44053d:	55                   	push   %ebp
44053e:	68 8d 05 44 00       	push   $0x44058d
440543:	64 ff 30             	push   %fs:(%eax)
440546:	64 89 20             	mov    %esp,%fs:(%eax)
440549:	83 7b 08 04          	cmpl   $0x4,0x8(%ebx)
44054d:	7c 05                	jl     0x440554
44054f:	e8 20 fe ff ff       	call   0x440374
440554:	8b 45 fc             	mov    -0x4(%ebp),%eax
440557:	8d 50 60             	lea    0x60(%eax),%edx
44055a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44055d:	8b 40 58             	mov    0x58(%eax),%eax
440560:	8b 08                	mov    (%eax),%ecx
440562:	ff 51 48             	call   *0x48(%ecx)
440565:	8b 55 fc             	mov    -0x4(%ebp),%edx
440568:	89 42 5c             	mov    %eax,0x5c(%edx)
44056b:	8b 55 fc             	mov    -0x4(%ebp),%edx
44056e:	8b c3                	mov    %ebx,%eax
440570:	e8 03 39 fd ff       	call   0x413e78
440575:	33 c0                	xor    %eax,%eax
440577:	5a                   	pop    %edx
440578:	59                   	pop    %ecx
440579:	59                   	pop    %ecx
44057a:	64 89 10             	mov    %edx,%fs:(%eax)
44057d:	68 94 05 44 00       	push   $0x440594
440582:	a1 34 1b 46 00       	mov    0x461b34,%eax
440587:	e8 4c 3e fd ff       	call   0x4143d8
44058c:	c3                   	ret
44058d:	e9 ba 39 fc ff       	jmp    0x403f4c
440592:	eb ee                	jmp    0x440582
440594:	8b 45 fc             	mov    -0x4(%ebp),%eax
440597:	8b 50 5c             	mov    0x5c(%eax),%edx
44059a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44059d:	e8 ee d3 fd ff       	call   0x41d990
4405a2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4405a5:	e8 52 00 00 00       	call   0x4405fc
4405aa:	5b                   	pop    %ebx
4405ab:	59                   	pop    %ecx
4405ac:	5d                   	pop    %ebp
4405ad:	c3                   	ret
4405ae:	8b c0                	mov    %eax,%eax
4405b0:	53                   	push   %ebx
4405b1:	8b d8                	mov    %eax,%ebx
4405b3:	83 7b 5c 00          	cmpl   $0x0,0x5c(%ebx)
4405b7:	74 27                	je     0x4405e0
4405b9:	33 d2                	xor    %edx,%edx
4405bb:	8b c3                	mov    %ebx,%eax
4405bd:	e8 ce d3 fd ff       	call   0x41d990
4405c2:	8b d3                	mov    %ebx,%edx
4405c4:	a1 34 1b 46 00       	mov    0x461b34,%eax
4405c9:	e8 ba 3d fd ff       	call   0x414388
4405ce:	8b 43 5c             	mov    0x5c(%ebx),%eax
4405d1:	50                   	push   %eax
4405d2:	8b 43 60             	mov    0x60(%ebx),%eax
4405d5:	50                   	push   %eax
4405d6:	e8 b9 67 fc ff       	call   0x406d94
4405db:	33 c0                	xor    %eax,%eax
4405dd:	89 43 5c             	mov    %eax,0x5c(%ebx)
4405e0:	5b                   	pop    %ebx
4405e1:	c3                   	ret
4405e2:	8b c0                	mov    %eax,%eax
4405e4:	53                   	push   %ebx
4405e5:	56                   	push   %esi
4405e6:	8b f2                	mov    %edx,%esi
4405e8:	8b d8                	mov    %eax,%ebx
4405ea:	3b 73 58             	cmp    0x58(%ebx),%esi
4405ed:	74 0a                	je     0x4405f9
4405ef:	8b c3                	mov    %ebx,%eax
4405f1:	e8 ba ff ff ff       	call   0x4405b0
4405f6:	89 73 58             	mov    %esi,0x58(%ebx)
4405f9:	5e                   	pop    %esi
4405fa:	5b                   	pop    %ebx
4405fb:	c3                   	ret
4405fc:	53                   	push   %ebx
4405fd:	56                   	push   %esi
4405fe:	8b d8                	mov    %eax,%ebx
440600:	8b 73 58             	mov    0x58(%ebx),%esi
440603:	85 f6                	test   %esi,%esi
440605:	74 1b                	je     0x440622
440607:	8b c6                	mov    %esi,%eax
440609:	e8 f6 19 00 00       	call   0x442004
44060e:	84 c0                	test   %al,%al
440610:	74 09                	je     0x44061b
440612:	81 4b 54 80 00 00 00 	orl    $0x80,0x54(%ebx)
440619:	eb 07                	jmp    0x440622
44061b:	81 63 54 7f ff ff ff 	andl   $0xffffff7f,0x54(%ebx)
440622:	5e                   	pop    %esi
440623:	5b                   	pop    %ebx
440624:	c3                   	ret
440625:	8d 40 00             	lea    0x0(%eax),%eax
440628:	53                   	push   %ebx
440629:	56                   	push   %esi
44062a:	57                   	push   %edi
44062b:	84 d2                	test   %dl,%dl
44062d:	74 08                	je     0x440637
44062f:	83 c4 f0             	add    $0xfffffff0,%esp
440632:	e8 e5 34 fc ff       	call   0x403b1c
440637:	8b f1                	mov    %ecx,%esi
440639:	8b da                	mov    %edx,%ebx
44063b:	8b f8                	mov    %eax,%edi
44063d:	33 d2                	xor    %edx,%edx
44063f:	8b c7                	mov    %edi,%eax
440641:	e8 86 31 fc ff       	call   0x4037cc
440646:	89 77 04             	mov    %esi,0x4(%edi)
440649:	8b c7                	mov    %edi,%eax
44064b:	84 db                	test   %bl,%bl
44064d:	74 0f                	je     0x44065e
44064f:	e8 20 35 fc ff       	call   0x403b74
440654:	64 8f 05 00 00 00 00 	pop    %fs:0x0
44065b:	83 c4 0c             	add    $0xc,%esp
44065e:	8b c7                	mov    %edi,%eax
440660:	5f                   	pop    %edi
440661:	5e                   	pop    %esi
440662:	5b                   	pop    %ebx
440663:	c3                   	ret
440664:	53                   	push   %ebx
440665:	56                   	push   %esi
440666:	8b da                	mov    %edx,%ebx
440668:	8b f0                	mov    %eax,%esi
44066a:	8b c3                	mov    %ebx,%eax
44066c:	8b 15 4c d1 43 00    	mov    0x43d14c,%edx
440672:	e8 1d 33 fc ff       	call   0x403994
440677:	84 c0                	test   %al,%al
440679:	74 22                	je     0x44069d
44067b:	8b c3                	mov    %ebx,%eax
44067d:	8b 56 10             	mov    0x10(%esi),%edx
440680:	89 50 10             	mov    %edx,0x10(%eax)
440683:	8b 56 08             	mov    0x8(%esi),%edx
440686:	89 50 08             	mov    %edx,0x8(%eax)
440689:	8b 56 14             	mov    0x14(%esi),%edx
44068c:	89 50 14             	mov    %edx,0x14(%eax)
44068f:	8b 56 0c             	mov    0xc(%esi),%edx
440692:	89 50 0c             	mov    %edx,0xc(%eax)
440695:	8b 10                	mov    (%eax),%edx
440697:	ff 52 0c             	call   *0xc(%edx)
44069a:	5e                   	pop    %esi
44069b:	5b                   	pop    %ebx
44069c:	c3                   	ret
44069d:	8b d3                	mov    %ebx,%edx
44069f:	8b c6                	mov    %esi,%eax
4406a1:	e8 ea 3f fd ff       	call   0x414690
4406a6:	5e                   	pop    %esi
4406a7:	5b                   	pop    %ebx
4406a8:	c3                   	ret
4406a9:	8d 40 00             	lea    0x0(%eax),%eax
4406ac:	56                   	push   %esi
4406ad:	8b f0                	mov    %eax,%esi
4406af:	83 ea 01             	sub    $0x1,%edx
4406b2:	72 0a                	jb     0x4406be
4406b4:	74 25                	je     0x4406db
4406b6:	4a                   	dec    %edx
4406b7:	74 3f                	je     0x4406f8
4406b9:	4a                   	dec    %edx
4406ba:	74 5b                	je     0x440717
4406bc:	eb 76                	jmp    0x440734
4406be:	3b 4e 08             	cmp    0x8(%esi),%ecx
4406c1:	74 71                	je     0x440734
4406c3:	89 4e 08             	mov    %ecx,0x8(%esi)
4406c6:	85 c9                	test   %ecx,%ecx
4406c8:	76 08                	jbe    0x4406d2
4406ca:	3b 4e 10             	cmp    0x10(%esi),%ecx
4406cd:	73 03                	jae    0x4406d2
4406cf:	89 4e 10             	mov    %ecx,0x10(%esi)
4406d2:	8b c6                	mov    %esi,%eax
4406d4:	8b 10                	mov    (%eax),%edx
4406d6:	ff 52 0c             	call   *0xc(%edx)
4406d9:	5e                   	pop    %esi
4406da:	c3                   	ret
4406db:	3b 4e 0c             	cmp    0xc(%esi),%ecx
4406de:	74 54                	je     0x440734
4406e0:	89 4e 0c             	mov    %ecx,0xc(%esi)
4406e3:	85 c9                	test   %ecx,%ecx
4406e5:	76 08                	jbe    0x4406ef
4406e7:	3b 4e 14             	cmp    0x14(%esi),%ecx
4406ea:	73 03                	jae    0x4406ef
4406ec:	89 4e 14             	mov    %ecx,0x14(%esi)
4406ef:	8b c6                	mov    %esi,%eax
4406f1:	8b 10                	mov    (%eax),%edx
4406f3:	ff 52 0c             	call   *0xc(%edx)
4406f6:	5e                   	pop    %esi
4406f7:	c3                   	ret
4406f8:	3b 4e 10             	cmp    0x10(%esi),%ecx
4406fb:	74 37                	je     0x440734
4406fd:	89 4e 10             	mov    %ecx,0x10(%esi)
440700:	8b 46 08             	mov    0x8(%esi),%eax
440703:	85 c0                	test   %eax,%eax
440705:	76 07                	jbe    0x44070e
440707:	3b c1                	cmp    %ecx,%eax
440709:	73 03                	jae    0x44070e
44070b:	89 4e 08             	mov    %ecx,0x8(%esi)
44070e:	8b c6                	mov    %esi,%eax
440710:	8b 10                	mov    (%eax),%edx
440712:	ff 52 0c             	call   *0xc(%edx)
440715:	5e                   	pop    %esi
440716:	c3                   	ret
440717:	3b 4e 14             	cmp    0x14(%esi),%ecx
44071a:	74 18                	je     0x440734
44071c:	89 4e 14             	mov    %ecx,0x14(%esi)
44071f:	8b 46 0c             	mov    0xc(%esi),%eax