43f650:	57                   	push   %edi
43f651:	68 10 04 00 00       	push   $0x410
43f656:	ff 15 c8 71 4a 00    	call   *0x4a71c8
43f65c:	8b d8                	mov    %eax,%ebx
43f65e:	85 db                	test   %ebx,%ebx
43f660:	75 48                	jne    0x43f6aa
43f662:	ff 15 b8 72 4a 00    	call   *0x4a72b8
43f668:	85 c0                	test   %eax,%eax
43f66a:	7e 08                	jle    0x43f674
43f66c:	0f b7 c0             	movzwl %ax,%eax
43f66f:	0d 00 00 07 80       	or     $0x80070000,%eax
43f674:	8b d0                	mov    %eax,%edx
43f676:	b9 24 02 41 00       	mov    $0x410224,%ecx
43f67b:	e8 15 8d 03 00       	call   0x478395
43f680:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
43f684:	8b 85 dc fd ff ff    	mov    -0x224(%ebp),%eax
43f68a:	85 c0                	test   %eax,%eax
43f68c:	74 10                	je     0x43f69e
43f68e:	8b 08                	mov    (%eax),%ecx
43f690:	50                   	push   %eax
43f691:	8b 71 08             	mov    0x8(%ecx),%esi
43f694:	8b ce                	mov    %esi,%ecx
43f696:	ff 15 2c 81 4a 00    	call   *0x4a812c
43f69c:	ff d6                	call   *%esi
43f69e:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
43f6a5:	e9 00 01 00 00       	jmp    0x43f7aa
43f6aa:	68 0a 02 00 00       	push   $0x20a
43f6af:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
43f6b5:	57                   	push   %edi
43f6b6:	50                   	push   %eax
43f6b7:	e8 7d 19 05 00       	call   0x491039
43f6bc:	83 c4 0c             	add    $0xc,%esp
43f6bf:	c7 85 d0 fd ff ff 05 	movl   $0x105,-0x230(%ebp)
43f6c6:	01 00 00
43f6c9:	8d 85 d0 fd ff ff    	lea    -0x230(%ebp),%eax
43f6cf:	50                   	push   %eax
43f6d0:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
43f6d6:	50                   	push   %eax
43f6d7:	57                   	push   %edi
43f6d8:	53                   	push   %ebx
43f6d9:	ff 15 c4 71 4a 00    	call   *0x4a71c4
43f6df:	8b f0                	mov    %eax,%esi
43f6e1:	ff 15 b8 72 4a 00    	call   *0x4a72b8
43f6e7:	53                   	push   %ebx
43f6e8:	8b f8                	mov    %eax,%edi
43f6ea:	ff 15 88 72 4a 00    	call   *0x4a7288
43f6f0:	85 f6                	test   %esi,%esi
43f6f2:	75 40                	jne    0x43f734
43f6f4:	85 ff                	test   %edi,%edi
43f6f6:	7e 09                	jle    0x43f701
43f6f8:	0f b7 ff             	movzwl %di,%edi
43f6fb:	81 cf 00 00 07 80    	or     $0x80070000,%edi
43f701:	8b d7                	mov    %edi,%edx
43f703:	b9 40 02 41 00       	mov    $0x410240,%ecx
43f708:	e8 88 8c 03 00       	call   0x478395
43f70d:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
43f711:	8b 85 dc fd ff ff    	mov    -0x224(%ebp),%eax
43f717:	85 c0                	test   %eax,%eax
43f719:	74 10                	je     0x43f72b
43f71b:	8b 08                	mov    (%eax),%ecx
43f71d:	50                   	push   %eax
43f71e:	8b 71 08             	mov    0x8(%ecx),%esi
43f721:	8b ce                	mov    %esi,%ecx
43f723:	ff 15 2c 81 4a 00    	call   *0x4a812c
43f729:	ff d6                	call   *%esi
43f72b:	c7 45 fc 0a 00 00 00 	movl   $0xa,-0x4(%ebp)
43f732:	eb 76                	jmp    0x43f7aa
43f734:	33 c0                	xor    %eax,%eax
43f736:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
43f73a:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
43f740:	50                   	push   %eax
43f741:	ff 15 c0 7c 4a 00    	call   *0x4a7cc0
43f747:	85 c0                	test   %eax,%eax
43f749:	75 33                	jne    0x43f77e
43f74b:	33 d2                	xor    %edx,%edx
43f74d:	b9 78 02 41 00       	mov    $0x410278,%ecx
43f752:	e8 3e 8c 03 00       	call   0x478395
43f757:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
43f75b:	8b 85 dc fd ff ff    	mov    -0x224(%ebp),%eax
43f761:	85 c0                	test   %eax,%eax
43f763:	74 10                	je     0x43f775
43f765:	8b 08                	mov    (%eax),%ecx
43f767:	50                   	push   %eax
43f768:	8b 71 08             	mov    0x8(%ecx),%esi
43f76b:	8b ce                	mov    %esi,%ecx
43f76d:	ff 15 2c 81 4a 00    	call   *0x4a812c
43f773:	ff d6                	call   *%esi
43f775:	c7 45 fc 0c 00 00 00 	movl   $0xc,-0x4(%ebp)
43f77c:	eb 2c                	jmp    0x43f7aa
43f77e:	8b c8                	mov    %eax,%ecx
43f780:	e8 9c 8b 03 00       	call   0x478321
43f785:	c6 45 fc 0d          	movb   $0xd,-0x4(%ebp)
43f789:	8b 85 dc fd ff ff    	mov    -0x224(%ebp),%eax
43f78f:	85 c0                	test   %eax,%eax
43f791:	74 10                	je     0x43f7a3
43f793:	8b 08                	mov    (%eax),%ecx
43f795:	50                   	push   %eax
43f796:	8b 71 08             	mov    0x8(%ecx),%esi
43f799:	8b ce                	mov    %esi,%ecx
43f79b:	ff 15 2c 81 4a 00    	call   *0x4a812c
43f7a1:	ff d6                	call   *%esi
43f7a3:	c7 45 fc 0e 00 00 00 	movl   $0xe,-0x4(%ebp)
43f7aa:	8b 85 e0 fd ff ff    	mov    -0x220(%ebp),%eax
43f7b0:	85 c0                	test   %eax,%eax
43f7b2:	74 10                	je     0x43f7c4
43f7b4:	8b 08                	mov    (%eax),%ecx
43f7b6:	50                   	push   %eax
43f7b7:	8b 71 08             	mov    0x8(%ecx),%esi
43f7ba:	8b ce                	mov    %esi,%ecx
43f7bc:	ff 15 2c 81 4a 00    	call   *0x4a812c
43f7c2:	ff d6                	call   *%esi
43f7c4:	e8 ec 0c 05 00       	call   0x4904b5
43f7c9:	c3                   	ret
43f7ca:	cc                   	int3
43f7cb:	cc                   	int3
43f7cc:	cc                   	int3
43f7cd:	cc                   	int3
43f7ce:	cc                   	int3
43f7cf:	cc                   	int3
43f7d0:	6a 04                	push   $0x4
43f7d2:	b8 b3 16 49 00       	mov    $0x4916b3,%eax
43f7d7:	e8 f7 0c 05 00       	call   0x4904d3
43f7dc:	8b f9                	mov    %ecx,%edi
43f7de:	68 80 00 00 00       	push   $0x80
43f7e3:	ff 15 14 74 4a 00    	call   *0x4a7414
43f7e9:	59                   	pop    %ecx
43f7ea:	89 45 f0             	mov    %eax,-0x10(%ebp)
43f7ed:	33 f6                	xor    %esi,%esi
43f7ef:	89 75 fc             	mov    %esi,-0x4(%ebp)
43f7f2:	85 c0                	test   %eax,%eax
43f7f4:	74 0b                	je     0x43f801
43f7f6:	56                   	push   %esi
43f7f7:	57                   	push   %edi
43f7f8:	8b c8                	mov    %eax,%ecx
43f7fa:	e8 c7 27 02 00       	call   0x461fc6
43f7ff:	8b f0                	mov    %eax,%esi
43f801:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43f805:	8b cf                	mov    %edi,%ecx
43f807:	e8 17 fd ff ff       	call   0x43f523
43f80c:	8b c6                	mov    %esi,%eax
43f80e:	e8 8e 0c 05 00       	call   0x4904a1
43f813:	c3                   	ret
43f814:	cc                   	int3
43f815:	cc                   	int3
43f816:	cc                   	int3
43f817:	cc                   	int3
43f818:	cc                   	int3
43f819:	cc                   	int3
43f81a:	cc                   	int3
43f81b:	cc                   	int3
43f81c:	cc                   	int3
43f81d:	cc                   	int3
43f81e:	cc                   	int3
43f81f:	cc                   	int3
43f820:	6a 04                	push   $0x4
43f822:	b8 b3 16 49 00       	mov    $0x4916b3,%eax
43f827:	e8 a7 0c 05 00       	call   0x4904d3
43f82c:	8b f1                	mov    %ecx,%esi
43f82e:	ff 75 08             	push   0x8(%ebp)
43f831:	ff 15 c4 78 4a 00    	call   *0x4a78c4
43f837:	85 c0                	test   %eax,%eax
43f839:	75 21                	jne    0x43f85c
43f83b:	68 80 00 00 00       	push   $0x80
43f840:	ff 15 14 74 4a 00    	call   *0x4a7414
43f846:	59                   	pop    %ecx
43f847:	8b c8                	mov    %eax,%ecx
43f849:	89 4d f0             	mov    %ecx,-0x10(%ebp)
43f84c:	33 c0                	xor    %eax,%eax
43f84e:	89 45 fc             	mov    %eax,-0x4(%ebp)
43f851:	85 c9                	test   %ecx,%ecx
43f853:	74 07                	je     0x43f85c
43f855:	50                   	push   %eax
43f856:	56                   	push   %esi
43f857:	e8 6a 27 02 00       	call   0x461fc6
43f85c:	e8 40 0c 05 00       	call   0x4904a1
43f861:	c2 04 00             	ret    $0x4
43f864:	8b ff                	mov    %edi,%edi
43f866:	55                   	push   %ebp
43f867:	8b ec                	mov    %esp,%ebp
43f869:	83 ec 1c             	sub    $0x1c,%esp
43f86c:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
43f871:	33 c5                	xor    %ebp,%eax
43f873:	89 45 fc             	mov    %eax,-0x4(%ebp)
43f876:	8b 45 0c             	mov    0xc(%ebp),%eax
43f879:	8b 55 08             	mov    0x8(%ebp),%edx
43f87c:	53                   	push   %ebx
43f87d:	56                   	push   %esi
43f87e:	57                   	push   %edi
43f87f:	8d 75 10             	lea    0x10(%ebp),%esi
43f882:	89 45 e8             	mov    %eax,-0x18(%ebp)
43f885:	8d 7d ec             	lea    -0x14(%ebp),%edi
43f888:	89 55 e4             	mov    %edx,-0x1c(%ebp)
43f88b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f88c:	8d 45 ec             	lea    -0x14(%ebp),%eax
43f88f:	33 db                	xor    %ebx,%ebx
43f891:	6a 04                	push   $0x4
43f893:	8b cb                	mov    %ebx,%ecx
43f895:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f896:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f897:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f898:	bf 2c 38 41 00       	mov    $0x41382c,%edi
43f89d:	5e                   	pop    %esi
43f89e:	8b 04 88             	mov    (%eax,%ecx,4),%eax
43f8a1:	3b 04 8f             	cmp    (%edi,%ecx,4),%eax
43f8a4:	75 69                	jne    0x43f90f
43f8a6:	41                   	inc    %ecx
43f8a7:	8d 45 ec             	lea    -0x14(%ebp),%eax
43f8aa:	3b ce                	cmp    %esi,%ecx
43f8ac:	75 f0                	jne    0x43f89e
43f8ae:	52                   	push   %edx
43f8af:	ff 15 54 72 4a 00    	call   *0x4a7254
43f8b5:	85 c0                	test   %eax,%eax
43f8b7:	74 3e                	je     0x43f8f7
43f8b9:	0f b7 50 0e          	movzwl 0xe(%eax),%edx
43f8bd:	8b ca                	mov    %edx,%ecx
43f8bf:	8d 41 ff             	lea    -0x1(%ecx),%eax
43f8c2:	83 f8 07             	cmp    $0x7,%eax
43f8c5:	77 10                	ja     0x43f8d7
43f8c7:	83 f9 02             	cmp    $0x2,%ecx
43f8ca:	76 0e                	jbe    0x43f8da
43f8cc:	33 db                	xor    %ebx,%ebx
43f8ce:	66 3b d6             	cmp    %si,%dx
43f8d1:	0f 97 c3             	seta   %bl
43f8d4:	43                   	inc    %ebx
43f8d5:	eb 03                	jmp    0x43f8da
43f8d7:	6a 03                	push   $0x3
43f8d9:	5b                   	pop    %ebx
43f8da:	8b 45 e8             	mov    -0x18(%ebp),%eax
43f8dd:	be 2c 38 41 00       	mov    $0x41382c,%esi
43f8e2:	ff 75 e4             	push   -0x1c(%ebp)
43f8e5:	89 58 10             	mov    %ebx,0x10(%eax)
43f8e8:	8d 78 14             	lea    0x14(%eax),%edi
43f8eb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f8ec:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f8ed:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f8ee:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f8ef:	ff 15 50 72 4a 00    	call   *0x4a7250
43f8f5:	eb 16                	jmp    0x43f90d
43f8f7:	8b 45 e8             	mov    -0x18(%ebp),%eax
43f8fa:	be 2c 38 41 00       	mov    $0x41382c,%esi
43f8ff:	c7 40 10 03 00 00 00 	movl   $0x3,0x10(%eax)
43f906:	8d 78 14             	lea    0x14(%eax),%edi
43f909:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f90a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f90b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f90c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f90d:	b3 01                	mov    $0x1,%bl
43f90f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43f912:	8a c3                	mov    %bl,%al
43f914:	5f                   	pop    %edi
43f915:	5e                   	pop    %esi
43f916:	33 cd                	xor    %ebp,%ecx
43f918:	5b                   	pop    %ebx
43f919:	e8 e2 05 05 00       	call   0x48ff00
43f91e:	c9                   	leave
43f91f:	c2 18 00             	ret    $0x18
43f922:	6a 3c                	push   $0x3c
43f924:	b8 4c 2f 49 00       	mov    $0x492f4c,%eax
43f929:	e8 d8 0b 05 00       	call   0x490506
43f92e:	89 4d dc             	mov    %ecx,-0x24(%ebp)
43f931:	8b 75 08             	mov    0x8(%ebp),%esi
43f934:	33 db                	xor    %ebx,%ebx
43f936:	8b 55 0c             	mov    0xc(%ebp),%edx
43f939:	8b 7d 10             	mov    0x10(%ebp),%edi
43f93c:	89 75 d4             	mov    %esi,-0x2c(%ebp)
43f93f:	8b 46 14             	mov    0x14(%esi),%eax
43f942:	f7 d0                	not    %eax
43f944:	89 55 d8             	mov    %edx,-0x28(%ebp)
43f947:	89 7d d0             	mov    %edi,-0x30(%ebp)
43f94a:	a8 01                	test   $0x1,%al
43f94c:	0f 84 41 01 00 00    	je     0x43fa93
43f952:	8b 5d dc             	mov    -0x24(%ebp),%ebx
43f955:	8b 4d 14             	mov    0x14(%ebp),%ecx
43f958:	f7 d9                	neg    %ecx
43f95a:	8b 83 ec 00 00 00    	mov    0xec(%ebx),%eax
43f960:	1b c9                	sbb    %ecx,%ecx
43f962:	83 e1 03             	and    $0x3,%ecx
43f965:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
43f969:	0f 8e cf 00 00 00    	jle    0x43fa3e
43f96f:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
43f973:	0f 85 c5 00 00 00    	jne    0x43fa3e
43f979:	8b 7e 20             	mov    0x20(%esi),%edi
43f97c:	8d 4d dc             	lea    -0x24(%ebp),%ecx
43f97f:	51                   	push   %ecx
43f980:	8b 07                	mov    (%edi),%eax
43f982:	8b 70 20             	mov    0x20(%eax),%esi
43f985:	8b ce                	mov    %esi,%ecx
43f987:	ff 15 2c 81 4a 00    	call   *0x4a812c
43f98d:	8b cf                	mov    %edi,%ecx
43f98f:	ff d6                	call   *%esi
43f991:	8b 7d d4             	mov    -0x2c(%ebp),%edi
43f994:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43f998:	8b 7f 20             	mov    0x20(%edi),%edi
43f99b:	8b 07                	mov    (%edi),%eax
43f99d:	8b 70 54             	mov    0x54(%eax),%esi
43f9a0:	8b ce                	mov    %esi,%ecx
43f9a2:	ff 15 2c 81 4a 00    	call   *0x4a812c
43f9a8:	8b cf                	mov    %edi,%ecx
43f9aa:	ff d6                	call   *%esi
43f9ac:	8b 4d d8             	mov    -0x28(%ebp),%ecx
43f9af:	83 79 10 04          	cmpl   $0x4,0x10(%ecx)
43f9b3:	8d 51 14             	lea    0x14(%ecx),%edx
43f9b6:	74 05                	je     0x43f9bd
43f9b8:	ba 6c 38 41 00       	mov    $0x41386c,%edx
43f9bd:	51                   	push   %ecx
43f9be:	8d 41 48             	lea    0x48(%ecx),%eax
43f9c1:	50                   	push   %eax
43f9c2:	8d 41 44             	lea    0x44(%ecx),%eax
43f9c5:	50                   	push   %eax
43f9c6:	8d 41 40             	lea    0x40(%ecx),%eax
43f9c9:	50                   	push   %eax
43f9ca:	8d 41 3c             	lea    0x3c(%ecx),%eax
43f9cd:	50                   	push   %eax
43f9ce:	51                   	push   %ecx
43f9cf:	8b 4d dc             	mov    -0x24(%ebp),%ecx
43f9d2:	52                   	push   %edx
43f9d3:	8b 53 24             	mov    0x24(%ebx),%edx
43f9d6:	e8 d1 c5 01 00       	call   0x45bfac
43f9db:	8b d8                	mov    %eax,%ebx
43f9dd:	85 db                	test   %ebx,%ebx
43f9df:	75 14                	jne    0x43f9f5
43f9e1:	c7 05 30 5c 4a 00 05 	movl   $0x405,0x4a5c30
43f9e8:	04 00 00
43f9eb:	c7 05 48 5c 4a 00 3e 	movl   $0x83e,0x4a5c48
43f9f2:	08 00 00
43f9f5:	83 ec 0c             	sub    $0xc,%esp
43f9f8:	8d 4d b8             	lea    -0x48(%ebp),%ecx
43f9fb:	e8 d2 02 fe ff       	call   0x41fcd2
43fa00:	8b 45 d4             	mov    -0x2c(%ebp),%eax
43fa03:	8d 4d b8             	lea    -0x48(%ebp),%ecx
43fa06:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
43fa0a:	51                   	push   %ecx
43fa0b:	6a 10                	push   $0x10
43fa0d:	8b 78 20             	mov    0x20(%eax),%edi
43fa10:	ff 75 dc             	push   -0x24(%ebp)
43fa13:	8b 07                	mov    (%edi),%eax
43fa15:	8b 70 28             	mov    0x28(%eax),%esi
43fa18:	8b ce                	mov    %esi,%ecx
43fa1a:	ff 15 2c 81 4a 00    	call   *0x4a812c
43fa20:	8b cf                	mov    %edi,%ecx
43fa22:	ff d6                	call   *%esi
43fa24:	8d 4d b8             	lea    -0x48(%ebp),%ecx
43fa27:	e8 53 02 fe ff       	call   0x41fc7f
43fa2c:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43fa30:	8d 4d dc             	lea    -0x24(%ebp),%ecx
43fa33:	ff 15 1c 74 4a 00    	call   *0x4a741c
43fa39:	8b 75 d4             	mov    -0x2c(%ebp),%esi
43fa3c:	eb 0d                	jmp    0x43fa4b
43fa3e:	51                   	push   %ecx
43fa3f:	ff 76 20             	push   0x20(%esi)