41e5eb:	0f b7 f0             	movzwl %ax,%esi
41e5ee:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41e5f4:	85 c0                	test   %eax,%eax
41e5f6:	0f 4e f0             	cmovle %eax,%esi
41e5f9:	b8 05 40 00 80       	mov    $0x80004005,%eax
41e5fe:	85 f6                	test   %esi,%esi
41e600:	0f 49 f0             	cmovns %eax,%esi
41e603:	56                   	push   %esi
41e604:	68 80 00 00 00       	push   $0x80
41e609:	68 6c 9c 45 00       	push   $0x459c6c
41e60e:	e8 c0 51 fe ff       	call   0x4037d3
41e613:	68 0c 9c 45 00       	push   $0x459c0c
41e618:	e9 c7 00 00 00       	jmp    0x41e6e4
41e61d:	8b 45 08             	mov    0x8(%ebp),%eax
41e620:	89 45 f8             	mov    %eax,-0x8(%ebp)
41e623:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
41e629:	89 45 fc             	mov    %eax,-0x4(%ebp)
41e62c:	8d 45 f8             	lea    -0x8(%ebp),%eax
41e62f:	50                   	push   %eax
41e630:	ff 73 04             	push   0x4(%ebx)
41e633:	56                   	push   %esi
41e634:	56                   	push   %esi
41e635:	56                   	push   %esi
41e636:	56                   	push   %esi
41e637:	6a 08                	push   $0x8
41e639:	68 00 00 00 80       	push   $0x80000000
41e63e:	68 00 00 00 90       	push   $0x90000000
41e643:	56                   	push   %esi
41e644:	ff 75 d8             	push   -0x28(%ebp)
41e647:	68 80 00 00 00       	push   $0x80
41e64c:	ff 15 90 b3 44 00    	call   *0x44b390
41e652:	85 c0                	test   %eax,%eax
41e654:	75 35                	jne    0x41e68b
41e656:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41e65c:	0f b7 f0             	movzwl %ax,%esi
41e65f:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41e665:	85 c0                	test   %eax,%eax
41e667:	0f 4e f0             	cmovle %eax,%esi
41e66a:	b8 05 40 00 80       	mov    $0x80004005,%eax
41e66f:	85 f6                	test   %esi,%esi
41e671:	0f 49 f0             	cmovns %eax,%esi
41e674:	56                   	push   %esi
41e675:	68 8a 00 00 00       	push   $0x8a
41e67a:	68 6c 9c 45 00       	push   $0x459c6c
41e67f:	e8 4f 51 fe ff       	call   0x4037d3
41e684:	68 28 9c 45 00       	push   $0x459c28
41e689:	eb 59                	jmp    0x41e6e4
41e68b:	89 87 e0 03 00 00    	mov    %eax,0x3e0(%edi)
41e691:	ff 33                	push   (%ebx)
41e693:	ff 15 28 b2 44 00    	call   *0x44b228
41e699:	8b 3d 4c b3 44 00    	mov    0x44b34c,%edi
41e69f:	eb 2a                	jmp    0x41e6cb
41e6a1:	83 f8 ff             	cmp    $0xffffffff,%eax
41e6a4:	74 34                	je     0x41e6da
41e6a6:	8d 45 dc             	lea    -0x24(%ebp),%eax
41e6a9:	50                   	push   %eax
41e6aa:	ff 75 dc             	push   -0x24(%ebp)
41e6ad:	ff 15 74 b3 44 00    	call   *0x44b374
41e6b3:	85 c0                	test   %eax,%eax
41e6b5:	75 14                	jne    0x41e6cb
41e6b7:	8d 45 dc             	lea    -0x24(%ebp),%eax
41e6ba:	50                   	push   %eax
41e6bb:	ff 15 a4 b3 44 00    	call   *0x44b3a4
41e6c1:	8d 45 dc             	lea    -0x24(%ebp),%eax
41e6c4:	50                   	push   %eax
41e6c5:	ff 15 a0 b3 44 00    	call   *0x44b3a0
41e6cb:	56                   	push   %esi
41e6cc:	56                   	push   %esi
41e6cd:	56                   	push   %esi
41e6ce:	8d 45 dc             	lea    -0x24(%ebp),%eax
41e6d1:	50                   	push   %eax
41e6d2:	ff d7                	call   *%edi
41e6d4:	85 c0                	test   %eax,%eax
41e6d6:	75 c9                	jne    0x41e6a1
41e6d8:	eb 12                	jmp    0x41e6ec
41e6da:	be ff ff 00 80       	mov    $0x8000ffff,%esi
41e6df:	68 4c c0 44 00       	push   $0x44c04c
41e6e4:	56                   	push   %esi
41e6e5:	e8 45 1a 02 00       	call   0x44012f
41e6ea:	59                   	pop    %ecx
41e6eb:	59                   	pop    %ecx
41e6ec:	ff 73 04             	push   0x4(%ebx)
41e6ef:	68 c4 9c 45 00       	push   $0x459cc4
41e6f4:	ff 15 94 b3 44 00    	call   *0x44b394
41e6fa:	5f                   	pop    %edi
41e6fb:	8b c6                	mov    %esi,%eax
41e6fd:	5e                   	pop    %esi
41e6fe:	5b                   	pop    %ebx
41e6ff:	8b e5                	mov    %ebp,%esp
41e701:	5d                   	pop    %ebp
41e702:	c2 04 00             	ret    $0x4
41e705:	55                   	push   %ebp
41e706:	8b ec                	mov    %esp,%ebp
41e708:	8b 45 0c             	mov    0xc(%ebp),%eax
41e70b:	48                   	dec    %eax
41e70c:	56                   	push   %esi
41e70d:	83 e8 01             	sub    $0x1,%eax
41e710:	0f 84 c6 00 00 00    	je     0x41e7dc
41e716:	83 e8 0f             	sub    $0xf,%eax
41e719:	74 54                	je     0x41e76f
41e71b:	8b 75 14             	mov    0x14(%ebp),%esi
41e71e:	83 e8 70             	sub    $0x70,%eax
41e721:	74 2d                	je     0x41e750
41e723:	83 e8 01             	sub    $0x1,%eax
41e726:	75 35                	jne    0x41e75d
41e728:	56                   	push   %esi
41e729:	ff 75 10             	push   0x10(%ebp)
41e72c:	68 82 00 00 00       	push   $0x82
41e731:	ff 75 08             	push   0x8(%ebp)
41e734:	ff 15 9c b3 44 00    	call   *0x44b39c
41e73a:	6a 00                	push   $0x0
41e73c:	6a eb                	push   $0xffffffeb
41e73e:	ff 75 08             	push   0x8(%ebp)
41e741:	8b f0                	mov    %eax,%esi
41e743:	ff 15 80 b3 44 00    	call   *0x44b380
41e749:	8b c6                	mov    %esi,%eax
41e74b:	e9 96 00 00 00       	jmp    0x41e7e6
41e750:	ff 36                	push   (%esi)
41e752:	6a eb                	push   $0xffffffeb
41e754:	ff 75 08             	push   0x8(%ebp)
41e757:	ff 15 80 b3 44 00    	call   *0x44b380
41e75d:	56                   	push   %esi
41e75e:	ff 75 10             	push   0x10(%ebp)
41e761:	ff 75 0c             	push   0xc(%ebp)
41e764:	ff 75 08             	push   0x8(%ebp)
41e767:	ff 15 9c b3 44 00    	call   *0x44b39c
41e76d:	eb 77                	jmp    0x41e7e6
41e76f:	53                   	push   %ebx
41e770:	57                   	push   %edi
41e771:	8b 7d 14             	mov    0x14(%ebp),%edi
41e774:	33 db                	xor    %ebx,%ebx
41e776:	6a eb                	push   $0xffffffeb
41e778:	ff 75 08             	push   0x8(%ebp)
41e77b:	81 e7 00 00 00 40    	and    $0x40000000,%edi
41e781:	ff 15 84 b3 44 00    	call   *0x44b384
41e787:	89 45 08             	mov    %eax,0x8(%ebp)
41e78a:	39 18                	cmp    %ebx,(%eax)
41e78c:	75 20                	jne    0x41e7ae
41e78e:	8b 48 04             	mov    0x4(%eax),%ecx
41e791:	33 c0                	xor    %eax,%eax
41e793:	6a 02                	push   $0x2
41e795:	85 ff                	test   %edi,%edi
41e797:	8b 51 10             	mov    0x10(%ecx),%edx
41e79a:	59                   	pop    %ecx
41e79b:	0f 45 c8             	cmovne %eax,%ecx
41e79e:	51                   	push   %ecx
41e79f:	ff 75 14             	push   0x14(%ebp)
41e7a2:	8b 32                	mov    (%edx),%esi
41e7a4:	52                   	push   %edx
41e7a5:	ff 56 14             	call   *0x14(%esi)
41e7a8:	83 f8 02             	cmp    $0x2,%eax
41e7ab:	0f 95 c3             	setne  %bl
41e7ae:	53                   	push   %ebx
41e7af:	e8 7c 54 ff ff       	call   0x413c30
41e7b4:	50                   	push   %eax
41e7b5:	8b 45 08             	mov    0x8(%ebp),%eax
41e7b8:	ff 30                	push   (%eax)
41e7ba:	e8 71 54 ff ff       	call   0x413c30
41e7bf:	50                   	push   %eax
41e7c0:	57                   	push   %edi
41e7c1:	e8 6a 54 ff ff       	call   0x413c30
41e7c6:	50                   	push   %eax
41e7c7:	68 90 01 00 20       	push   $0x20000190
41e7cc:	6a 02                	push   $0x2
41e7ce:	e8 3c 6d fe ff       	call   0x40550f
41e7d3:	83 c4 14             	add    $0x14,%esp
41e7d6:	8b c3                	mov    %ebx,%eax
41e7d8:	5f                   	pop    %edi
41e7d9:	5b                   	pop    %ebx
41e7da:	eb 0a                	jmp    0x41e7e6
41e7dc:	6a 00                	push   $0x0
41e7de:	ff 15 5c b3 44 00    	call   *0x44b35c
41e7e4:	33 c0                	xor    %eax,%eax
41e7e6:	5e                   	pop    %esi
41e7e7:	5d                   	pop    %ebp
41e7e8:	c2 10 00             	ret    $0x10
41e7eb:	55                   	push   %ebp
41e7ec:	8b ec                	mov    %esp,%ebp
41e7ee:	56                   	push   %esi
41e7ef:	8b 75 08             	mov    0x8(%ebp),%esi
41e7f2:	ff b6 e0 03 00 00    	push   0x3e0(%esi)
41e7f8:	ff 15 54 b3 44 00    	call   *0x44b354
41e7fe:	85 c0                	test   %eax,%eax
41e800:	74 23                	je     0x41e825
41e802:	6a 00                	push   $0x0
41e804:	6a 00                	push   $0x0
41e806:	6a 10                	push   $0x10
41e808:	ff b6 e0 03 00 00    	push   0x3e0(%esi)
41e80e:	ff 15 50 b3 44 00    	call   *0x44b350
41e814:	68 98 3a 00 00       	push   $0x3a98
41e819:	ff b6 e4 03 00 00    	push   0x3e4(%esi)
41e81f:	ff 15 10 b2 44 00    	call   *0x44b210
41e825:	5e                   	pop    %esi
41e826:	5d                   	pop    %ebp
41e827:	c2 04 00             	ret    $0x4
41e82a:	55                   	push   %ebp
41e82b:	8b ec                	mov    %esp,%ebp
41e82d:	83 ec 14             	sub    $0x14,%esp
41e830:	53                   	push   %ebx
41e831:	56                   	push   %esi
41e832:	57                   	push   %edi
41e833:	33 db                	xor    %ebx,%ebx
41e835:	8d 7d ec             	lea    -0x14(%ebp),%edi
41e838:	33 c0                	xor    %eax,%eax
41e83a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41e83d:	ab                   	stos   %eax,%es:(%edi)
41e83e:	8b f3                	mov    %ebx,%esi
41e840:	53                   	push   %ebx
41e841:	53                   	push   %ebx
41e842:	6a 01                	push   $0x1
41e844:	ab                   	stos   %eax,%es:(%edi)
41e845:	53                   	push   %ebx
41e846:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41e849:	ab                   	stos   %eax,%es:(%edi)
41e84a:	ff 15 00 b2 44 00    	call   *0x44b200
41e850:	89 45 f8             	mov    %eax,-0x8(%ebp)
41e853:	85 c0                	test   %eax,%eax
41e855:	75 3d                	jne    0x41e894
41e857:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41e85d:	0f b7 f0             	movzwl %ax,%esi
41e860:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41e866:	85 c0                	test   %eax,%eax
41e868:	0f 4e f0             	cmovle %eax,%esi
41e86b:	b8 05 40 00 80       	mov    $0x80004005,%eax
41e870:	85 f6                	test   %esi,%esi
41e872:	0f 49 f0             	cmovns %eax,%esi
41e875:	56                   	push   %esi
41e876:	6a 33                	push   $0x33
41e878:	68 6c 9c 45 00       	push   $0x459c6c
41e87d:	e8 51 4f fe ff       	call   0x4037d3
41e882:	68 7c 9c 45 00       	push   $0x459c7c
41e887:	56                   	push   %esi
41e888:	e8 a2 18 02 00       	call   0x44012f
41e88d:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e890:	59                   	pop    %ecx
41e891:	59                   	pop    %ecx
41e892:	eb 78                	jmp    0x41e90c
41e894:	8b 7d 0c             	mov    0xc(%ebp),%edi
41e897:	53                   	push   %ebx
41e898:	89 45 ec             	mov    %eax,-0x14(%ebp)
41e89b:	8b 45 08             	mov    0x8(%ebp),%eax
41e89e:	53                   	push   %ebx
41e89f:	89 45 f0             	mov    %eax,-0x10(%ebp)
41e8a2:	8d 45 ec             	lea    -0x14(%ebp),%eax
41e8a5:	50                   	push   %eax
41e8a6:	68 63 e5 41 00       	push   $0x41e563
41e8ab:	53                   	push   %ebx
41e8ac:	53                   	push   %ebx
41e8ad:	89 7d f4             	mov    %edi,-0xc(%ebp)
41e8b0:	ff 15 20 b2 44 00    	call   *0x44b220
41e8b6:	89 45 fc             	mov    %eax,-0x4(%ebp)
41e8b9:	85 c0                	test   %eax,%eax
41e8bb:	75 32                	jne    0x41e8ef
41e8bd:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41e8c3:	0f b7 f0             	movzwl %ax,%esi
41e8c6:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41e8cc:	85 c0                	test   %eax,%eax
41e8ce:	0f 4e f0             	cmovle %eax,%esi
41e8d1:	b8 05 40 00 80       	mov    $0x80004005,%eax
41e8d6:	85 f6                	test   %esi,%esi
41e8d8:	0f 49 f0             	cmovns %eax,%esi
41e8db:	56                   	push   %esi
41e8dc:	6a 3c                	push   $0x3c
41e8de:	68 6c 9c 45 00       	push   $0x459c6c
41e8e3:	e8 eb 4e fe ff       	call   0x4037d3
41e8e8:	68 a4 9c 45 00       	push   $0x459ca4
41e8ed:	eb 98                	jmp    0x41e887
41e8ef:	6a ff                	push   $0xffffffff
41e8f1:	53                   	push   %ebx
41e8f2:	8d 45 f8             	lea    -0x8(%ebp),%eax
41e8f5:	50                   	push   %eax
41e8f6:	6a 02                	push   $0x2
41e8f8:	ff 15 2c b2 44 00    	call   *0x44b22c
41e8fe:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e901:	89 87 e4 03 00 00    	mov    %eax,0x3e4(%edi)
41e907:	8b c3                	mov    %ebx,%eax
41e909:	89 45 fc             	mov    %eax,-0x4(%ebp)
41e90c:	8b 3d d4 b0 44 00    	mov    0x44b0d4,%edi
41e912:	85 c0                	test   %eax,%eax
41e914:	74 06                	je     0x41e91c
41e916:	50                   	push   %eax
41e917:	ff d7                	call   *%edi
41e919:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41e91c:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
41e91f:	74 05                	je     0x41e926
41e921:	ff 75 f8             	push   -0x8(%ebp)
41e924:	ff d7                	call   *%edi
41e926:	5f                   	pop    %edi
41e927:	8b c6                	mov    %esi,%eax
41e929:	5e                   	pop    %esi
41e92a:	5b                   	pop    %ebx
41e92b:	8b e5                	mov    %ebp,%esp
41e92d:	5d                   	pop    %ebp
41e92e:	c2 08 00             	ret    $0x8
41e931:	55                   	push   %ebp
41e932:	8b ec                	mov    %esp,%ebp
41e934:	8b 45 08             	mov    0x8(%ebp),%eax
41e937:	89 41 0c             	mov    %eax,0xc(%ecx)
41e93a:	8b 45 0c             	mov    0xc(%ebp),%eax
41e93d:	89 41 10             	mov    %eax,0x10(%ecx)
41e940:	8b c1                	mov    %ecx,%eax
41e942:	c7 01 f4 9c 45 00    	movl   $0x459cf4,(%ecx)
41e948:	c7 41 04 60 9d 45 00 	movl   $0x459d60,0x4(%ecx)
41e94f:	c7 41 08 01 00 00 00 	movl   $0x1,0x8(%ecx)
41e956:	5d                   	pop    %ebp
41e957:	c2 08 00             	ret    $0x8
41e95a:	55                   	push   %ebp
41e95b:	8b ec                	mov    %esp,%ebp
41e95d:	8b 45 08             	mov    0x8(%ebp),%eax
41e960:	83 c0 08             	add    $0x8,%eax
41e963:	50                   	push   %eax
41e964:	ff 15 30 b2 44 00    	call   *0x44b230
41e96a:	5d                   	pop    %ebp
41e96b:	c2 04 00             	ret    $0x4
41e96e:	83 6c 24 04 04       	subl   $0x4,0x4(%esp)
41e973:	e9 e2 ff ff ff       	jmp    0x41e95a
41e978:	55                   	push   %ebp
41e979:	8b ec                	mov    %esp,%ebp
41e97b:	8b 45 08             	mov    0x8(%ebp),%eax
41e97e:	56                   	push   %esi
41e97f:	ff 75 0c             	push   0xc(%ebp)
41e982:	33 f6                	xor    %esi,%esi
41e984:	56                   	push   %esi
41e985:	68 03 90 00 00       	push   $0x9003
41e98a:	ff 70 10             	push   0x10(%eax)
41e98d:	ff 15 68 b3 44 00    	call   *0x44b368
41e993:	85 c0                	test   %eax,%eax
41e995:	75 3b                	jne    0x41e9d2
41e997:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41e99d:	0f b7 f0             	movzwl %ax,%esi
41e9a0:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41e9a6:	85 c0                	test   %eax,%eax
41e9a8:	0f 4e f0             	cmovle %eax,%esi
41e9ab:	b8 05 40 00 80       	mov    $0x80004005,%eax
41e9b0:	85 f6                	test   %esi,%esi
41e9b2:	0f 49 f0             	cmovns %eax,%esi
41e9b5:	56                   	push   %esi
41e9b6:	68 b4 02 00 00       	push   $0x2b4
41e9bb:	68 94 9d 45 00       	push   $0x459d94
41e9c0:	e8 0e 4e fe ff       	call   0x4037d3
41e9c5:	68 d4 a2 45 00       	push   $0x45a2d4
41e9ca:	56                   	push   %esi
41e9cb:	e8 5f 17 02 00       	call   0x44012f
41e9d0:	59                   	pop    %ecx
41e9d1:	59                   	pop    %ecx
41e9d2:	8b c6                	mov    %esi,%eax
41e9d4:	5e                   	pop    %esi
41e9d5:	5d                   	pop    %ebp
41e9d6:	c2 08 00             	ret    $0x8
41e9d9:	55                   	push   %ebp