43f4da:	8b 75 08             	mov    0x8(%ebp),%esi
43f4dd:	eb 02                	jmp    0x43f4e1
43f4df:	33 f6                	xor    %esi,%esi
43f4e1:	3b f7                	cmp    %edi,%esi
43f4e3:	7e 0b                	jle    0x43f4f0
43f4e5:	8b d7                	mov    %edi,%edx
43f4e7:	8b c5                	mov    %ebp,%eax
43f4e9:	e8 02 c9 fd ff       	call   0x41bdf0
43f4ee:	eb 0f                	jmp    0x43f4ff
43f4f0:	8b d7                	mov    %edi,%edx
43f4f2:	2b d6                	sub    %esi,%edx
43f4f4:	8b 83 9c 01 00 00    	mov    0x19c(%ebx),%eax
43f4fa:	e8 f1 c8 fd ff       	call   0x41bdf0
43f4ff:	5d                   	pop    %ebp
43f500:	5f                   	pop    %edi
43f501:	5e                   	pop    %esi
43f502:	5b                   	pop    %ebx
43f503:	c3                   	ret
43f504:	33 d2                	xor    %edx,%edx
43f506:	8b 88 98 01 00 00    	mov    0x198(%eax),%ecx
43f50c:	85 c9                	test   %ecx,%ecx
43f50e:	74 03                	je     0x43f513
43f510:	03 51 08             	add    0x8(%ecx),%edx
43f513:	8b 88 9c 01 00 00    	mov    0x19c(%eax),%ecx
43f519:	85 c9                	test   %ecx,%ecx
43f51b:	74 03                	je     0x43f520
43f51d:	03 51 08             	add    0x8(%ecx),%edx
43f520:	8b c2                	mov    %edx,%eax
43f522:	c3                   	ret
43f523:	90                   	nop
43f524:	53                   	push   %ebx
43f525:	56                   	push   %esi
43f526:	57                   	push   %edi
43f527:	55                   	push   %ebp
43f528:	51                   	push   %ecx
43f529:	8b f2                	mov    %edx,%esi
43f52b:	89 04 24             	mov    %eax,(%esp)
43f52e:	8b 04 24             	mov    (%esp),%eax
43f531:	e8 ce ff ff ff       	call   0x43f504
43f536:	8b d8                	mov    %eax,%ebx
43f538:	4b                   	dec    %ebx
43f539:	85 db                	test   %ebx,%ebx
43f53b:	7c 21                	jl     0x43f55e
43f53d:	43                   	inc    %ebx
43f53e:	33 ff                	xor    %edi,%edi
43f540:	8b d7                	mov    %edi,%edx
43f542:	8b 04 24             	mov    (%esp),%eax
43f545:	e8 7e ff ff ff       	call   0x43f4c8
43f54a:	8b e8                	mov    %eax,%ebp
43f54c:	8b d6                	mov    %esi,%edx
43f54e:	8b 45 3c             	mov    0x3c(%ebp),%eax
43f551:	ff 55 38             	call   *0x38(%ebp)
43f554:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
43f558:	75 04                	jne    0x43f55e
43f55a:	47                   	inc    %edi
43f55b:	4b                   	dec    %ebx
43f55c:	75 e2                	jne    0x43f540
43f55e:	5a                   	pop    %edx
43f55f:	5d                   	pop    %ebp
43f560:	5f                   	pop    %edi
43f561:	5e                   	pop    %esi
43f562:	5b                   	pop    %ebx
43f563:	c3                   	ret
43f564:	83 c4 f0             	add    $0xfffffff0,%esp
43f567:	0f b7 d2             	movzwl %dx,%edx
43f56a:	89 14 24             	mov    %edx,(%esp)
43f56d:	33 d2                	xor    %edx,%edx
43f56f:	89 54 24 04          	mov    %edx,0x4(%esp)
43f573:	33 d2                	xor    %edx,%edx
43f575:	89 54 24 08          	mov    %edx,0x8(%esp)
43f579:	33 d2                	xor    %edx,%edx
43f57b:	89 54 24 0c          	mov    %edx,0xc(%esp)
43f57f:	8b d4                	mov    %esp,%edx
43f581:	e8 9e ff ff ff       	call   0x43f524
43f586:	83 c4 10             	add    $0x10,%esp
43f589:	c3                   	ret
43f58a:	8b c0                	mov    %eax,%eax
43f58c:	53                   	push   %ebx
43f58d:	56                   	push   %esi
43f58e:	57                   	push   %edi
43f58f:	8b fa                	mov    %edx,%edi
43f591:	8b d8                	mov    %eax,%ebx
43f593:	8b c3                	mov    %ebx,%eax
43f595:	e8 96 d0 ff ff       	call   0x43c630
43f59a:	84 c0                	test   %al,%al
43f59c:	74 06                	je     0x43f5a4
43f59e:	81 0f 00 20 00 00    	orl    $0x2000,(%edi)
43f5a4:	8b c3                	mov    %ebx,%eax
43f5a6:	e8 b5 d0 ff ff       	call   0x43c660
43f5ab:	84 c0                	test   %al,%al
43f5ad:	74 06                	je     0x43f5b5
43f5af:	81 0f 00 40 00 00    	orl    $0x4000,(%edi)
43f5b5:	8b c3                	mov    %ebx,%eax
43f5b7:	66 be c8 ff          	mov    $0xffc8,%si
43f5bb:	e8 28 40 fc ff       	call   0x4035e8
43f5c0:	84 c0                	test   %al,%al
43f5c2:	74 29                	je     0x43f5ed
43f5c4:	8b c3                	mov    %ebx,%eax
43f5c6:	66 be ca ff          	mov    $0xffca,%si
43f5ca:	e8 19 40 fc ff       	call   0x4035e8
43f5cf:	84 c0                	test   %al,%al
43f5d1:	75 08                	jne    0x43f5db
43f5d3:	81 0f 00 10 00 00    	orl    $0x1000,(%edi)
43f5d9:	eb 12                	jmp    0x43f5ed
43f5db:	8b c3                	mov    %ebx,%eax
43f5dd:	66 be ca ff          	mov    $0xffca,%si
43f5e1:	e8 02 40 fc ff       	call   0x4035e8
43f5e6:	3c 01                	cmp    $0x1,%al
43f5e8:	75 03                	jne    0x43f5ed
43f5ea:	83 0f 00             	orl    $0x0,(%edi)
43f5ed:	5f                   	pop    %edi
43f5ee:	5e                   	pop    %esi
43f5ef:	5b                   	pop    %ebx
43f5f0:	c3                   	ret
43f5f1:	8d 40 00             	lea    0x0(%eax),%eax
43f5f4:	55                   	push   %ebp
43f5f5:	8b ec                	mov    %esp,%ebp
43f5f7:	81 c4 fc fe ff ff    	add    $0xfffffefc,%esp
43f5fd:	53                   	push   %ebx
43f5fe:	56                   	push   %esi
43f5ff:	57                   	push   %edi
43f600:	33 c9                	xor    %ecx,%ecx
43f602:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43f605:	8b da                	mov    %edx,%ebx
43f607:	8b f0                	mov    %eax,%esi
43f609:	33 c0                	xor    %eax,%eax
43f60b:	55                   	push   %ebp
43f60c:	68 12 f7 43 00       	push   $0x43f712
43f611:	64 ff 30             	push   %fs:(%eax)
43f614:	64 89 20             	mov    %esp,%fs:(%eax)
43f617:	8b c3                	mov    %ebx,%eax
43f619:	33 c9                	xor    %ecx,%ecx
43f61b:	ba 8c 00 00 00       	mov    $0x8c,%edx
43f620:	e8 47 37 fc ff       	call   0x402d6c
43f625:	8b 46 64             	mov    0x64(%esi),%eax
43f628:	89 03                	mov    %eax,(%ebx)
43f62a:	c7 43 04 00 00 00 44 	movl   $0x44000000,0x4(%ebx)
43f631:	8d 53 08             	lea    0x8(%ebx),%edx
43f634:	8b c6                	mov    %esi,%eax
43f636:	e8 51 ff ff ff       	call   0x43f58c
43f63b:	f6 46 50 01          	testb  $0x1,0x50(%esi)
43f63f:	74 0e                	je     0x43f64f
43f641:	81 4b 04 00 00 00 02 	orl    $0x2000000,0x4(%ebx)
43f648:	81 4b 08 00 00 01 00 	orl    $0x10000,0x8(%ebx)
43f64f:	f6 46 1c 10          	testb  $0x10,0x1c(%esi)
43f653:	75 12                	jne    0x43f667
43f655:	8b c6                	mov    %esi,%eax
43f657:	8b 10                	mov    (%eax),%edx
43f659:	ff 52 50             	call   *0x50(%edx)
43f65c:	84 c0                	test   %al,%al
43f65e:	75 07                	jne    0x43f667
43f660:	81 4b 04 00 00 00 08 	orl    $0x8000000,0x4(%ebx)
43f667:	80 be a4 01 00 00 00 	cmpb   $0x0,0x1a4(%esi)
43f66e:	74 07                	je     0x43f677
43f670:	81 4b 04 00 00 01 00 	orl    $0x10000,0x4(%ebx)
43f677:	8b 46 40             	mov    0x40(%esi),%eax
43f67a:	89 43 0c             	mov    %eax,0xc(%ebx)
43f67d:	8b 46 44             	mov    0x44(%esi),%eax
43f680:	89 43 10             	mov    %eax,0x10(%ebx)
43f683:	8b 46 48             	mov    0x48(%esi),%eax
43f686:	89 43 14             	mov    %eax,0x14(%ebx)
43f689:	8b 46 4c             	mov    0x4c(%esi),%eax
43f68c:	89 43 18             	mov    %eax,0x18(%ebx)
43f68f:	8b 7e 30             	mov    0x30(%esi),%edi
43f692:	85 ff                	test   %edi,%edi
43f694:	74 0c                	je     0x43f6a2
43f696:	8b c7                	mov    %edi,%eax
43f698:	e8 cb 30 00 00       	call   0x442768
43f69d:	89 43 1c             	mov    %eax,0x1c(%ebx)
43f6a0:	eb 09                	jmp    0x43f6ab
43f6a2:	8b 86 90 01 00 00    	mov    0x190(%esi),%eax
43f6a8:	89 43 1c             	mov    %eax,0x1c(%ebx)
43f6ab:	c7 43 24 0b 00 00 00 	movl   $0xb,0x24(%ebx)
43f6b2:	b8 d8 6b 40 00       	mov    $0x406bd8,%eax
43f6b7:	89 43 28             	mov    %eax,0x28(%ebx)
43f6ba:	68 00 7f 00 00       	push   $0x7f00
43f6bf:	6a 00                	push   $0x0
43f6c1:	e8 b2 77 fc ff       	call   0x406e78
43f6c6:	89 43 3c             	mov    %eax,0x3c(%ebx)
43f6c9:	33 c0                	xor    %eax,%eax
43f6cb:	89 43 40             	mov    %eax,0x40(%ebx)
43f6ce:	a1 68 c6 49 00       	mov    0x49c668,%eax
43f6d3:	89 43 34             	mov    %eax,0x34(%ebx)
43f6d6:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
43f6dc:	8b 06                	mov    (%esi),%eax
43f6de:	e8 59 3c fc ff       	call   0x40333c
43f6e3:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
43f6e9:	8d 45 fc             	lea    -0x4(%ebp),%eax
43f6ec:	e8 d7 4c fc ff       	call   0x4043c8
43f6f1:	8b 55 fc             	mov    -0x4(%ebp),%edx
43f6f4:	8d 43 4c             	lea    0x4c(%ebx),%eax
43f6f7:	e8 b8 97 fc ff       	call   0x408eb4
43f6fc:	33 c0                	xor    %eax,%eax
43f6fe:	5a                   	pop    %edx
43f6ff:	59                   	pop    %ecx
43f700:	59                   	pop    %ecx
43f701:	64 89 10             	mov    %edx,%fs:(%eax)
43f704:	68 19 f7 43 00       	push   $0x43f719
43f709:	8d 45 fc             	lea    -0x4(%ebp),%eax
43f70c:	e8 53 4a fc ff       	call   0x404164
43f711:	c3                   	ret
43f712:	e9 51 44 fc ff       	jmp    0x403b68
43f717:	eb f0                	jmp    0x43f709
43f719:	5f                   	pop    %edi
43f71a:	5e                   	pop    %esi
43f71b:	5b                   	pop    %ebx
43f71c:	8b e5                	mov    %ebp,%esp
43f71e:	5d                   	pop    %ebp
43f71f:	c3                   	ret
43f720:	55                   	push   %ebp
43f721:	8b ec                	mov    %esp,%ebp
43f723:	81 c4 40 ff ff ff    	add    $0xffffff40,%esp
43f729:	53                   	push   %ebx
43f72a:	56                   	push   %esi
43f72b:	33 d2                	xor    %edx,%edx
43f72d:	89 95 40 ff ff ff    	mov    %edx,-0xc0(%ebp)
43f733:	8b f0                	mov    %eax,%esi
43f735:	33 c0                	xor    %eax,%eax
43f737:	55                   	push   %ebp
43f738:	68 e1 f8 43 00       	push   $0x43f8e1
43f73d:	64 ff 30             	push   %fs:(%eax)
43f740:	64 89 20             	mov    %esp,%fs:(%eax)
43f743:	8d 95 74 ff ff ff    	lea    -0x8c(%ebp),%edx
43f749:	8b c6                	mov    %esi,%eax
43f74b:	8b 08                	mov    (%eax),%ecx
43f74d:	ff 91 98 00 00 00    	call   *0x98(%ecx)
43f753:	83 7d 90 00          	cmpl   $0x0,-0x70(%ebp)
43f757:	75 73                	jne    0x43f7cc
43f759:	f6 85 7b ff ff ff 40 	testb  $0x40,-0x85(%ebp)
43f760:	74 6a                	je     0x43f7cc
43f762:	8b 5e 04             	mov    0x4(%esi),%ebx
43f765:	85 db                	test   %ebx,%ebx
43f767:	74 23                	je     0x43f78c
43f769:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
43f76d:	74 1d                	je     0x43f78c
43f76f:	8b c3                	mov    %ebx,%eax
43f771:	8b 15 b0 80 43 00    	mov    0x4380b0,%edx
43f777:	e8 fc 3d fc ff       	call   0x403578
43f77c:	84 c0                	test   %al,%al
43f77e:	74 0c                	je     0x43f78c
43f780:	8b c3                	mov    %ebx,%eax
43f782:	e8 e1 2f 00 00       	call   0x442768
43f787:	89 45 90             	mov    %eax,-0x70(%ebp)
43f78a:	eb 40                	jmp    0x43f7cc
43f78c:	8b 46 08             	mov    0x8(%esi),%eax
43f78f:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
43f795:	c6 85 48 ff ff ff 0b 	movb   $0xb,-0xb8(%ebp)
43f79c:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
43f7a2:	50                   	push   %eax
43f7a3:	6a 00                	push   $0x0
43f7a5:	8d 95 40 ff ff ff    	lea    -0xc0(%ebp),%edx
43f7ab:	a1 74 b3 49 00       	mov    0x49b374,%eax
43f7b0:	e8 83 6a fc ff       	call   0x406238
43f7b5:	8b 8d 40 ff ff ff    	mov    -0xc0(%ebp),%ecx
43f7bb:	b2 01                	mov    $0x1,%dl
43f7bd:	a1 5c 95 41 00       	mov    0x41955c,%eax
43f7c2:	e8 ad cc fc ff       	call   0x40c474
43f7c7:	e8 d4 43 fc ff       	call   0x403ba0
43f7cc:	8b 45 9c             	mov    -0x64(%ebp),%eax
43f7cf:	89 86 74 01 00 00    	mov    %eax,0x174(%esi)
43f7d5:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43f7db:	50                   	push   %eax
43f7dc:	8d 45 c0             	lea    -0x40(%ebp),%eax
43f7df:	50                   	push   %eax
43f7e0:	8b 45 a8             	mov    -0x58(%ebp),%eax
43f7e3:	50                   	push   %eax
43f7e4:	e8 b7 74 fc ff       	call   0x406ca0
43f7e9:	83 f8 01             	cmp    $0x1,%eax
43f7ec:	1b c0                	sbb    %eax,%eax
43f7ee:	40                   	inc    %eax
43f7ef:	84 c0                	test   %al,%al
43f7f1:	74 0d                	je     0x43f800
43f7f3:	ba a8 8d 43 00       	mov    $0x438da8,%edx
43f7f8:	3b 95 50 ff ff ff    	cmp    -0xb0(%ebp),%edx
43f7fe:	74 31                	je     0x43f831
43f800:	84 c0                	test   %al,%al
43f802:	74 0d                	je     0x43f811
43f804:	8b 45 a8             	mov    -0x58(%ebp),%eax
43f807:	50                   	push   %eax
43f808:	8d 45 c0             	lea    -0x40(%ebp),%eax
43f80b:	50                   	push   %eax
43f80c:	e8 17 78 fc ff       	call   0x407028
43f811:	c7 45 9c a8 8d 43 00 	movl   $0x438da8,-0x64(%ebp)
43f818:	8d 45 c0             	lea    -0x40(%ebp),%eax
43f81b:	89 45 bc             	mov    %eax,-0x44(%ebp)
43f81e:	8d 45 98             	lea    -0x68(%ebp),%eax
43f821:	50                   	push   %eax
43f822:	e8 d1 76 fc ff       	call   0x406ef8
43f827:	66 85 c0             	test   %ax,%ax
43f82a:	75 05                	jne    0x43f831
43f82c:	e8 0b e2 fc ff       	call   0x40da3c
43f831:	89 35 44 dc 48 00    	mov    %esi,0x48dc44
43f837:	8d 95 74 ff ff ff    	lea    -0x8c(%ebp),%edx
43f83d:	8b c6                	mov    %esi,%eax
43f83f:	8b 08                	mov    (%eax),%ecx
43f841:	ff 91 9c 00 00 00    	call   *0x9c(%ecx)
43f847:	83 be 80 01 00 00 00 	cmpl   $0x0,0x180(%esi)
43f84e:	75 05                	jne    0x43f855
43f850:	e8 e7 e1 fc ff       	call   0x40da3c
43f855:	6a f0                	push   $0xfffffff0
43f857:	8b 86 80 01 00 00    	mov    0x180(%esi),%eax
43f85d:	50                   	push   %eax
43f85e:	e8 6d 75 fc ff       	call   0x406dd0
43f863:	a9 00 00 00 40       	test   $0x40000000,%eax
43f868:	74 21                	je     0x43f88b
43f86a:	6a f4                	push   $0xfffffff4
43f86c:	8b 86 80 01 00 00    	mov    0x180(%esi),%eax
43f872:	50                   	push   %eax
43f873:	e8 58 75 fc ff       	call   0x406dd0
43f878:	85 c0                	test   %eax,%eax
43f87a:	75 0f                	jne    0x43f88b
43f87c:	8b 86 80 01 00 00    	mov    0x180(%esi),%eax
43f882:	50                   	push   %eax
43f883:	6a f4                	push   $0xfffffff4
43f885:	50                   	push   %eax
43f886:	e8 35 77 fc ff       	call   0x406fc0
43f88b:	8b 46 64             	mov    0x64(%esi),%eax
43f88e:	e8 f1 97 fc ff       	call   0x409084
43f893:	33 c0                	xor    %eax,%eax
43f895:	89 46 64             	mov    %eax,0x64(%esi)
43f898:	8b c6                	mov    %esi,%eax
43f89a:	e8 35 31 00 00       	call   0x4429d4
43f89f:	6a 01                	push   $0x1
43f8a1:	8b 46 68             	mov    0x68(%esi),%eax
43f8a4:	e8 af 7a fe ff       	call   0x427358
43f8a9:	8b c8                	mov    %eax,%ecx
43f8ab:	ba 30 00 00 00       	mov    $0x30,%edx
43f8b0:	8b c6                	mov    %esi,%eax
43f8b2:	e8 e9 d8 ff ff       	call   0x43d1a0
43f8b7:	80 7e 5c 00          	cmpb   $0x0,0x5c(%esi)
43f8bb:	74 0b                	je     0x43f8c8
43f8bd:	8b c6                	mov    %esi,%eax
43f8bf:	66 be ee ff          	mov    $0xffee,%si
43f8c3:	e8 20 3d fc ff       	call   0x4035e8
43f8c8:	33 c0                	xor    %eax,%eax
43f8ca:	5a                   	pop    %edx
43f8cb:	59                   	pop    %ecx
43f8cc:	59                   	pop    %ecx
43f8cd:	64 89 10             	mov    %edx,%fs:(%eax)
43f8d0:	68 e8 f8 43 00       	push   $0x43f8e8
43f8d5:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
43f8db:	e8 84 48 fc ff       	call   0x404164
43f8e0:	c3                   	ret
43f8e1:	e9 82 42 fc ff       	jmp    0x403b68
43f8e6:	eb ed                	jmp    0x43f8d5
43f8e8:	5e                   	pop    %esi
43f8e9:	5b                   	pop    %ebx
43f8ea:	8b e5                	mov    %ebp,%esp
43f8ec:	5d                   	pop    %ebp
43f8ed:	c3                   	ret