43a448:	74 06                	je     0x43a450
43a44a:	f6 45 e0 02          	testb  $0x2,-0x20(%ebp)
43a44e:	75 42                	jne    0x43a492
43a450:	8b 45 e8             	mov    -0x18(%ebp),%eax
43a453:	50                   	push   %eax
43a454:	8b 08                	mov    (%eax),%ecx
43a456:	ff 51 08             	call   *0x8(%ecx)
43a459:	46                   	inc    %esi
43a45a:	3b 75 dc             	cmp    -0x24(%ebp),%esi
43a45d:	72 98                	jb     0x43a3f7
43a45f:	8b 75 f0             	mov    -0x10(%ebp),%esi
43a462:	8b 45 f8             	mov    -0x8(%ebp),%eax
43a465:	50                   	push   %eax
43a466:	8b 08                	mov    (%eax),%ecx
43a468:	ff 51 08             	call   *0x8(%ecx)
43a46b:	47                   	inc    %edi
43a46c:	3b 7d d8             	cmp    -0x28(%ebp),%edi
43a46f:	0f 82 20 ff ff ff    	jb     0x43a395
43a475:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a478:	50                   	push   %eax
43a479:	8b 08                	mov    (%eax),%ecx
43a47b:	ff 51 08             	call   *0x8(%ecx)
43a47e:	8b 45 f4             	mov    -0xc(%ebp),%eax
43a481:	50                   	push   %eax
43a482:	8b 08                	mov    (%eax),%ecx
43a484:	ff 51 08             	call   *0x8(%ecx)
43a487:	85 db                	test   %ebx,%ebx
43a489:	75 12                	jne    0x43a49d
43a48b:	b8 17 80 02 80       	mov    $0x80028017,%eax
43a490:	eb 62                	jmp    0x43a4f4
43a492:	8b 5d e8             	mov    -0x18(%ebp),%ebx
43a495:	33 f6                	xor    %esi,%esi
43a497:	46                   	inc    %esi
43a498:	89 75 f0             	mov    %esi,-0x10(%ebp)
43a49b:	eb c5                	jmp    0x43a462
43a49d:	8b 03                	mov    (%ebx),%eax
43a49f:	8d 4d c8             	lea    -0x38(%ebp),%ecx
43a4a2:	51                   	push   %ecx
43a4a3:	53                   	push   %ebx
43a4a4:	ff 50 0c             	call   *0xc(%eax)
43a4a7:	8b 4d c8             	mov    -0x38(%ebp),%ecx
43a4aa:	8b f1                	mov    %ecx,%esi
43a4ac:	8b 41 28             	mov    0x28(%ecx),%eax
43a4af:	8d 7d b4             	lea    -0x4c(%ebp),%edi
43a4b2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4b3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4b4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4b5:	89 45 dc             	mov    %eax,-0x24(%ebp)
43a4b8:	b8 40 10 00 00       	mov    $0x1040,%eax
43a4bd:	6a 04                	push   $0x4
43a4bf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4c0:	5e                   	pop    %esi
43a4c1:	66 85 41 36          	test   %ax,0x36(%ecx)
43a4c5:	74 03                	je     0x43a4ca
43a4c7:	89 75 dc             	mov    %esi,-0x24(%ebp)
43a4ca:	8b 03                	mov    (%ebx),%eax
43a4cc:	51                   	push   %ecx
43a4cd:	53                   	push   %ebx
43a4ce:	ff 50 4c             	call   *0x4c(%eax)
43a4d1:	39 75 dc             	cmp    %esi,-0x24(%ebp)
43a4d4:	74 0d                	je     0x43a4e3
43a4d6:	8b 03                	mov    (%ebx),%eax
43a4d8:	53                   	push   %ebx
43a4d9:	ff 50 08             	call   *0x8(%eax)
43a4dc:	b8 a0 8c 02 80       	mov    $0x80028ca0,%eax
43a4e1:	eb 11                	jmp    0x43a4f4
43a4e3:	8b 45 08             	mov    0x8(%ebp),%eax
43a4e6:	8b 7d 0c             	mov    0xc(%ebp),%edi
43a4e9:	89 18                	mov    %ebx,(%eax)
43a4eb:	8d 75 b4             	lea    -0x4c(%ebp),%esi
43a4ee:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4ef:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4f0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4f1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a4f2:	33 c0                	xor    %eax,%eax
43a4f4:	5e                   	pop    %esi
43a4f5:	5f                   	pop    %edi
43a4f6:	5b                   	pop    %ebx
43a4f7:	c9                   	leave
43a4f8:	c3                   	ret
43a4f9:	56                   	push   %esi
43a4fa:	8b f1                	mov    %ecx,%esi
43a4fc:	57                   	push   %edi
43a4fd:	8b fa                	mov    %edx,%edi
43a4ff:	85 f6                	test   %esi,%esi
43a501:	75 04                	jne    0x43a507
43a503:	21 0f                	and    %ecx,(%edi)
43a505:	eb 27                	jmp    0x43a52e
43a507:	56                   	push   %esi
43a508:	e8 ce 67 fe ff       	call   0x420cdb
43a50d:	40                   	inc    %eax
43a50e:	59                   	pop    %ecx
43a50f:	03 c0                	add    %eax,%eax
43a511:	50                   	push   %eax
43a512:	ff 15 0c d8 48 00    	call   *0x48d80c
43a518:	89 07                	mov    %eax,(%edi)
43a51a:	85 c0                	test   %eax,%eax
43a51c:	75 07                	jne    0x43a525
43a51e:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
43a523:	eb 0b                	jmp    0x43a530
43a525:	56                   	push   %esi
43a526:	50                   	push   %eax
43a527:	e8 f7 67 fe ff       	call   0x420d23
43a52c:	59                   	pop    %ecx
43a52d:	59                   	pop    %ecx
43a52e:	33 c0                	xor    %eax,%eax
43a530:	5f                   	pop    %edi
43a531:	5e                   	pop    %esi
43a532:	c3                   	ret
43a533:	6a 00                	push   $0x0
43a535:	6a 00                	push   $0x0
43a537:	6a 01                	push   $0x1
43a539:	51                   	push   %ecx
43a53a:	ff 15 28 d3 48 00    	call   *0x48d328
43a540:	c3                   	ret
43a541:	55                   	push   %ebp
43a542:	8b ec                	mov    %esp,%ebp
43a544:	51                   	push   %ecx
43a545:	53                   	push   %ebx
43a546:	8b 59 04             	mov    0x4(%ecx),%ebx
43a549:	56                   	push   %esi
43a54a:	33 f6                	xor    %esi,%esi
43a54c:	57                   	push   %edi
43a54d:	8d 53 ff             	lea    -0x1(%ebx),%edx
43a550:	85 db                	test   %ebx,%ebx
43a552:	74 2d                	je     0x43a581
43a554:	8b 01                	mov    (%ecx),%eax
43a556:	8d 04 50             	lea    (%eax,%edx,2),%eax
43a559:	0f b7 08             	movzwl (%eax),%ecx
43a55c:	6a 2e                	push   $0x2e
43a55e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43a561:	33 ff                	xor    %edi,%edi
43a563:	59                   	pop    %ecx
43a564:	66 39 4d fc          	cmp    %cx,-0x4(%ebp)
43a568:	74 21                	je     0x43a58b
43a56a:	0f b7 0c 7d b2 da 49 	movzwl 0x49dab2(,%edi,2),%ecx
43a571:	00
43a572:	47                   	inc    %edi
43a573:	66 85 c9             	test   %cx,%cx
43a576:	75 ec                	jne    0x43a564
43a578:	4a                   	dec    %edx
43a579:	83 e8 02             	sub    $0x2,%eax
43a57c:	46                   	inc    %esi
43a57d:	3b f3                	cmp    %ebx,%esi
43a57f:	72 d8                	jb     0x43a559
43a581:	83 c8 ff             	or     $0xffffffff,%eax
43a584:	5f                   	pop    %edi
43a585:	5e                   	pop    %esi
43a586:	5b                   	pop    %ebx
43a587:	c9                   	leave
43a588:	c2 04 00             	ret    $0x4
43a58b:	8b c2                	mov    %edx,%eax
43a58d:	eb f5                	jmp    0x43a584
43a58f:	55                   	push   %ebp
43a590:	8b ec                	mov    %esp,%ebp
43a592:	53                   	push   %ebx
43a593:	56                   	push   %esi
43a594:	8b 75 08             	mov    0x8(%ebp),%esi
43a597:	8b d9                	mov    %ecx,%ebx
43a599:	57                   	push   %edi
43a59a:	8b 7d 0c             	mov    0xc(%ebp),%edi
43a59d:	8b 43 04             	mov    0x4(%ebx),%eax
43a5a0:	03 47 04             	add    0x4(%edi),%eax
43a5a3:	8b ce                	mov    %esi,%ecx
43a5a5:	50                   	push   %eax
43a5a6:	e8 64 c5 fc ff       	call   0x406b0f
43a5ab:	8b 43 04             	mov    0x4(%ebx),%eax
43a5ae:	03 c0                	add    %eax,%eax
43a5b0:	50                   	push   %eax
43a5b1:	ff 33                	push   (%ebx)
43a5b3:	ff 36                	push   (%esi)
43a5b5:	e8 c6 48 fe ff       	call   0x41ee80
43a5ba:	8b 47 04             	mov    0x4(%edi),%eax
43a5bd:	8b 53 04             	mov    0x4(%ebx),%edx
43a5c0:	8b 0e                	mov    (%esi),%ecx
43a5c2:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
43a5c9:	50                   	push   %eax
43a5ca:	ff 37                	push   (%edi)
43a5cc:	8d 0c 51             	lea    (%ecx,%edx,2),%ecx
43a5cf:	51                   	push   %ecx
43a5d0:	e8 ab 48 fe ff       	call   0x41ee80
43a5d5:	8b 4b 04             	mov    0x4(%ebx),%ecx
43a5d8:	83 c4 18             	add    $0x18,%esp
43a5db:	03 4f 04             	add    0x4(%edi),%ecx
43a5de:	5f                   	pop    %edi
43a5df:	89 4e 04             	mov    %ecx,0x4(%esi)
43a5e2:	8b c6                	mov    %esi,%eax
43a5e4:	5e                   	pop    %esi
43a5e5:	5b                   	pop    %ebx
43a5e6:	5d                   	pop    %ebp
43a5e7:	c2 08 00             	ret    $0x8
43a5ea:	33 c0                	xor    %eax,%eax
43a5ec:	39 41 04             	cmp    %eax,0x4(%ecx)
43a5ef:	0f 94 c0             	sete   %al
43a5f2:	c3                   	ret
43a5f3:	55                   	push   %ebp
43a5f4:	8b ec                	mov    %esp,%ebp
43a5f6:	6a 08                	push   $0x8
43a5f8:	e8 ed 4e fe ff       	call   0x41f4ea
43a5fd:	83 60 04 00          	andl   $0x0,0x4(%eax)
43a601:	59                   	pop    %ecx
43a602:	8b 4d 08             	mov    0x8(%ebp),%ecx
43a605:	8b 09                	mov    (%ecx),%ecx
43a607:	89 08                	mov    %ecx,(%eax)
43a609:	83 3d 08 11 4c 00 00 	cmpl   $0x0,0x4c1108
43a610:	74 0b                	je     0x43a61d
43a612:	8b 0d 0c 11 4c 00    	mov    0x4c110c,%ecx
43a618:	89 41 04             	mov    %eax,0x4(%ecx)
43a61b:	eb 05                	jmp    0x43a622
43a61d:	a3 08 11 4c 00       	mov    %eax,0x4c1108
43a622:	a3 0c 11 4c 00       	mov    %eax,0x4c110c
43a627:	ff 05 04 11 4c 00    	incl   0x4c1104
43a62d:	5d                   	pop    %ebp
43a62e:	c2 04 00             	ret    $0x4
43a631:	6a 10                	push   $0x10
43a633:	68 f0 db 49 00       	push   $0x49dbf0
43a638:	68 38 29 4b 00       	push   $0x4b2938
43a63d:	6a 00                	push   $0x0
43a63f:	ff 15 e0 d6 48 00    	call   *0x48d6e0
43a645:	6a 01                	push   $0x1
43a647:	e8 a5 6d fe ff       	call   0x4213f1
43a64c:	cc                   	int3
43a64d:	55                   	push   %ebp
43a64e:	8b ec                	mov    %esp,%ebp
43a650:	56                   	push   %esi
43a651:	8b f1                	mov    %ecx,%esi
43a653:	e8 9a ad fc ff       	call   0x4053f2
43a658:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
43a65c:	74 07                	je     0x43a665
43a65e:	56                   	push   %esi
43a65f:	e8 fa 4e fe ff       	call   0x41f55e
43a664:	59                   	pop    %ecx
43a665:	8b c6                	mov    %esi,%eax
43a667:	5e                   	pop    %esi
43a668:	5d                   	pop    %ebp
43a669:	c2 04 00             	ret    $0x4
43a66c:	55                   	push   %ebp
43a66d:	8b ec                	mov    %esp,%ebp
43a66f:	83 ec 30             	sub    $0x30,%esp
43a672:	53                   	push   %ebx
43a673:	56                   	push   %esi
43a674:	57                   	push   %edi
43a675:	8d 45 e8             	lea    -0x18(%ebp),%eax
43a678:	50                   	push   %eax
43a679:	33 db                	xor    %ebx,%ebx
43a67b:	51                   	push   %ecx
43a67c:	8b 4d 08             	mov    0x8(%ebp),%ecx
43a67f:	8d 45 f0             	lea    -0x10(%ebp),%eax
43a682:	8b f3                	mov    %ebx,%esi
43a684:	50                   	push   %eax
43a685:	8d 55 ec             	lea    -0x14(%ebp),%edx
43a688:	89 5d f0             	mov    %ebx,-0x10(%ebp)
43a68b:	89 5d f8             	mov    %ebx,-0x8(%ebp)
43a68e:	89 75 f4             	mov    %esi,-0xc(%ebp)
43a691:	8b fb                	mov    %ebx,%edi
43a693:	c7 45 ec 04 00 00 00 	movl   $0x4,-0x14(%ebp)
43a69a:	e8 1c 05 00 00       	call   0x43abbb
43a69f:	83 c4 0c             	add    $0xc,%esp
43a6a2:	84 c0                	test   %al,%al
43a6a4:	0f 84 96 01 00 00    	je     0x43a840
43a6aa:	ff 75 e8             	push   -0x18(%ebp)
43a6ad:	8d 4d f8             	lea    -0x8(%ebp),%ecx
43a6b0:	e8 a1 05 00 00       	call   0x43ac56
43a6b5:	59                   	pop    %ecx
43a6b6:	84 c0                	test   %al,%al
43a6b8:	0f 84 82 01 00 00    	je     0x43a840
43a6be:	8d 45 dc             	lea    -0x24(%ebp),%eax
43a6c1:	50                   	push   %eax
43a6c2:	8d 45 fc             	lea    -0x4(%ebp),%eax
43a6c5:	50                   	push   %eax
43a6c6:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43a6c9:	50                   	push   %eax
43a6ca:	ff 75 f0             	push   -0x10(%ebp)
43a6cd:	89 5d fc             	mov    %ebx,-0x4(%ebp)
43a6d0:	ff 15 74 d0 48 00    	call   *0x48d074
43a6d6:	85 c0                	test   %eax,%eax
43a6d8:	0f 84 62 01 00 00    	je     0x43a840
43a6de:	6a 0c                	push   $0xc
43a6e0:	8d 45 d0             	lea    -0x30(%ebp),%eax
43a6e3:	53                   	push   %ebx
43a6e4:	50                   	push   %eax
43a6e5:	e8 66 66 fe ff       	call   0x420d50
43a6ea:	83 c4 0c             	add    $0xc,%esp
43a6ed:	c7 45 d4 08 00 00 00 	movl   $0x8,-0x2c(%ebp)
43a6f4:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
43a6f7:	74 19                	je     0x43a712
43a6f9:	6a 02                	push   $0x2
43a6fb:	6a 0c                	push   $0xc
43a6fd:	8d 45 d0             	lea    -0x30(%ebp),%eax
43a700:	50                   	push   %eax
43a701:	ff 75 fc             	push   -0x4(%ebp)
43a704:	ff 15 00 d0 48 00    	call   *0x48d000
43a70a:	85 c0                	test   %eax,%eax
43a70c:	0f 84 2e 01 00 00    	je     0x43a840
43a712:	ff 75 0c             	push   0xc(%ebp)
43a715:	ff 15 54 d0 48 00    	call   *0x48d054
43a71b:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
43a71e:	51                   	push   %ecx
43a71f:	8d 51 10             	lea    0x10(%ecx),%edx
43a722:	8d 4d f4             	lea    -0xc(%ebp),%ecx
43a725:	8d 14 42             	lea    (%edx,%eax,2),%edx
43a728:	e8 f5 04 00 00       	call   0x43ac22
43a72d:	8b 75 f4             	mov    -0xc(%ebp),%esi
43a730:	59                   	pop    %ecx
43a731:	84 c0                	test   %al,%al
43a733:	0f 84 07 01 00 00    	je     0x43a840
43a739:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
43a73c:	74 4a                	je     0x43a788
43a73e:	8b 4d d0             	mov    -0x30(%ebp),%ecx
43a741:	85 c9                	test   %ecx,%ecx
43a743:	74 43                	je     0x43a788
43a745:	8b c3                	mov    %ebx,%eax
43a747:	89 45 f4             	mov    %eax,-0xc(%ebp)
43a74a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43a74d:	51                   	push   %ecx
43a74e:	50                   	push   %eax
43a74f:	ff 75 fc             	push   -0x4(%ebp)
43a752:	ff 15 80 d0 48 00    	call   *0x48d080
43a758:	85 c0                	test   %eax,%eax
43a75a:	0f 84 e0 00 00 00    	je     0x43a840
43a760:	8b 4d e0             	mov    -0x20(%ebp),%ecx
43a763:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
43a767:	50                   	push   %eax
43a768:	51                   	push   %ecx
43a769:	6a ff                	push   $0xffffffff
43a76b:	6a 02                	push   $0x2
43a76d:	56                   	push   %esi
43a76e:	ff 15 7c d0 48 00    	call   *0x48d07c
43a774:	85 c0                	test   %eax,%eax
43a776:	0f 84 c4 00 00 00    	je     0x43a840
43a77c:	8b 45 f4             	mov    -0xc(%ebp),%eax
43a77f:	40                   	inc    %eax
43a780:	89 45 f4             	mov    %eax,-0xc(%ebp)
43a783:	3b 45 d0             	cmp    -0x30(%ebp),%eax
43a786:	72 c2                	jb     0x43a74a
43a788:	ff 75 0c             	push   0xc(%ebp)
43a78b:	ff 15 54 d0 48 00    	call   *0x48d054
43a791:	83 c0 08             	add    $0x8,%eax
43a794:	50                   	push   %eax
43a795:	6a 08                	push   $0x8
43a797:	89 45 e0             	mov    %eax,-0x20(%ebp)
43a79a:	ff 15 68 d1 48 00    	call   *0x48d168
43a7a0:	50                   	push   %eax
43a7a1:	ff 15 64 d1 48 00    	call   *0x48d164
43a7a7:	8b f8                	mov    %eax,%edi
43a7a9:	85 ff                	test   %edi,%edi
43a7ab:	0f 84 8f 00 00 00    	je     0x43a840
43a7b1:	8b 45 e0             	mov    -0x20(%ebp),%eax
43a7b4:	ff 75 0c             	push   0xc(%ebp)
43a7b7:	66 89 47 02          	mov    %ax,0x2(%edi)