41f785:	5e                   	pop    %esi
41f786:	c3                   	ret
41f787:	8b ff                	mov    %edi,%edi
41f789:	55                   	push   %ebp
41f78a:	8b ec                	mov    %esp,%ebp
41f78c:	81 ec 28 03 00 00    	sub    $0x328,%esp
41f792:	a1 14 50 45 00       	mov    0x455014,%eax
41f797:	33 c5                	xor    %ebp,%eax
41f799:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f79c:	83 7d 08 ff          	cmpl   $0xffffffff,0x8(%ebp)
41f7a0:	57                   	push   %edi
41f7a1:	74 09                	je     0x41f7ac
41f7a3:	ff 75 08             	push   0x8(%ebp)
41f7a6:	e8 fb b0 ff ff       	call   0x41a8a6
41f7ab:	59                   	pop    %ecx
41f7ac:	6a 50                	push   $0x50
41f7ae:	8d 85 e0 fc ff ff    	lea    -0x320(%ebp),%eax
41f7b4:	6a 00                	push   $0x0
41f7b6:	50                   	push   %eax
41f7b7:	e8 54 c4 ff ff       	call   0x41bc10
41f7bc:	68 cc 02 00 00       	push   $0x2cc
41f7c1:	8d 85 30 fd ff ff    	lea    -0x2d0(%ebp),%eax
41f7c7:	6a 00                	push   $0x0
41f7c9:	50                   	push   %eax
41f7ca:	e8 41 c4 ff ff       	call   0x41bc10
41f7cf:	8d 85 e0 fc ff ff    	lea    -0x320(%ebp),%eax
41f7d5:	83 c4 18             	add    $0x18,%esp
41f7d8:	89 85 d8 fc ff ff    	mov    %eax,-0x328(%ebp)
41f7de:	8d 85 30 fd ff ff    	lea    -0x2d0(%ebp),%eax
41f7e4:	89 85 dc fc ff ff    	mov    %eax,-0x324(%ebp)
41f7ea:	89 85 e0 fd ff ff    	mov    %eax,-0x220(%ebp)
41f7f0:	89 8d dc fd ff ff    	mov    %ecx,-0x224(%ebp)
41f7f6:	89 95 d8 fd ff ff    	mov    %edx,-0x228(%ebp)
41f7fc:	89 9d d4 fd ff ff    	mov    %ebx,-0x22c(%ebp)
41f802:	89 b5 d0 fd ff ff    	mov    %esi,-0x230(%ebp)
41f808:	89 bd cc fd ff ff    	mov    %edi,-0x234(%ebp)
41f80e:	66 8c 95 f8 fd ff ff 	data16 mov %ss,-0x208(%ebp)
41f815:	66 8c 8d ec fd ff ff 	data16 mov %cs,-0x214(%ebp)
41f81c:	66 8c 9d c8 fd ff ff 	data16 mov %ds,-0x238(%ebp)
41f823:	66 8c 85 c4 fd ff ff 	data16 mov %es,-0x23c(%ebp)
41f82a:	66 8c a5 c0 fd ff ff 	data16 mov %fs,-0x240(%ebp)
41f831:	66 8c ad bc fd ff ff 	data16 mov %gs,-0x244(%ebp)
41f838:	9c                   	pushf
41f839:	8f 85 f0 fd ff ff    	pop    -0x210(%ebp)
41f83f:	8b 45 04             	mov    0x4(%ebp),%eax
41f842:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
41f848:	8d 45 04             	lea    0x4(%ebp),%eax
41f84b:	89 85 f4 fd ff ff    	mov    %eax,-0x20c(%ebp)
41f851:	c7 85 30 fd ff ff 01 	movl   $0x10001,-0x2d0(%ebp)
41f858:	00 01 00
41f85b:	8b 40 fc             	mov    -0x4(%eax),%eax
41f85e:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
41f864:	8b 45 0c             	mov    0xc(%ebp),%eax
41f867:	89 85 e0 fc ff ff    	mov    %eax,-0x320(%ebp)
41f86d:	8b 45 10             	mov    0x10(%ebp),%eax
41f870:	89 85 e4 fc ff ff    	mov    %eax,-0x31c(%ebp)
41f876:	8b 45 04             	mov    0x4(%ebp),%eax
41f879:	89 85 ec fc ff ff    	mov    %eax,-0x314(%ebp)
41f87f:	ff 15 88 e1 43 00    	call   *0x43e188
41f885:	6a 00                	push   $0x0
41f887:	8b f8                	mov    %eax,%edi
41f889:	ff 15 78 e1 43 00    	call   *0x43e178
41f88f:	8d 85 d8 fc ff ff    	lea    -0x328(%ebp),%eax
41f895:	50                   	push   %eax
41f896:	ff 15 74 e1 43 00    	call   *0x43e174
41f89c:	85 c0                	test   %eax,%eax
41f89e:	75 13                	jne    0x41f8b3
41f8a0:	85 ff                	test   %edi,%edi
41f8a2:	75 0f                	jne    0x41f8b3
41f8a4:	83 7d 08 ff          	cmpl   $0xffffffff,0x8(%ebp)
41f8a8:	74 09                	je     0x41f8b3
41f8aa:	ff 75 08             	push   0x8(%ebp)
41f8ad:	e8 f4 af ff ff       	call   0x41a8a6
41f8b2:	59                   	pop    %ecx
41f8b3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f8b6:	33 cd                	xor    %ebp,%ecx
41f8b8:	5f                   	pop    %edi
41f8b9:	e8 ec a2 ff ff       	call   0x419baa
41f8be:	c9                   	leave
41f8bf:	c3                   	ret
41f8c0:	8b ff                	mov    %edi,%edi
41f8c2:	55                   	push   %ebp
41f8c3:	8b ec                	mov    %esp,%ebp
41f8c5:	8b 45 08             	mov    0x8(%ebp),%eax
41f8c8:	a3 bc 69 45 00       	mov    %eax,0x4569bc
41f8cd:	5d                   	pop    %ebp
41f8ce:	c3                   	ret
41f8cf:	8b ff                	mov    %edi,%edi
41f8d1:	55                   	push   %ebp
41f8d2:	8b ec                	mov    %esp,%ebp
41f8d4:	83 ec 28             	sub    $0x28,%esp
41f8d7:	8d 4d d8             	lea    -0x28(%ebp),%ecx
41f8da:	6a 00                	push   $0x0
41f8dc:	e8 ef fb ff ff       	call   0x41f4d0
41f8e1:	8d 45 d8             	lea    -0x28(%ebp),%eax
41f8e4:	50                   	push   %eax
41f8e5:	ff 75 18             	push   0x18(%ebp)
41f8e8:	ff 75 14             	push   0x14(%ebp)
41f8eb:	ff 75 10             	push   0x10(%ebp)
41f8ee:	ff 75 0c             	push   0xc(%ebp)
41f8f1:	ff 75 08             	push   0x8(%ebp)
41f8f4:	e8 0d 00 00 00       	call   0x41f906
41f8f9:	83 c4 18             	add    $0x18,%esp
41f8fc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
41f8ff:	e8 2c fc ff ff       	call   0x41f530
41f904:	c9                   	leave
41f905:	c3                   	ret
41f906:	8b ff                	mov    %edi,%edi
41f908:	55                   	push   %ebp
41f909:	8b ec                	mov    %esp,%ebp
41f90b:	56                   	push   %esi
41f90c:	57                   	push   %edi
41f90d:	8b 7d 1c             	mov    0x1c(%ebp),%edi
41f910:	8b 07                	mov    (%edi),%eax
41f912:	85 c0                	test   %eax,%eax
41f914:	75 0b                	jne    0x41f921
41f916:	8b cf                	mov    %edi,%ecx
41f918:	e8 53 fc ff ff       	call   0x41f570
41f91d:	85 c0                	test   %eax,%eax
41f91f:	74 2a                	je     0x41f94b
41f921:	8b b0 5c 03 00 00    	mov    0x35c(%eax),%esi
41f927:	85 f6                	test   %esi,%esi
41f929:	74 20                	je     0x41f94b
41f92b:	ff 75 18             	push   0x18(%ebp)
41f92e:	ff 75 14             	push   0x14(%ebp)
41f931:	ff 75 10             	push   0x10(%ebp)
41f934:	ff 75 0c             	push   0xc(%ebp)
41f937:	ff 75 08             	push   0x8(%ebp)
41f93a:	8b ce                	mov    %esi,%ecx
41f93c:	ff 15 5c e2 43 00    	call   *0x43e25c
41f942:	ff d6                	call   *%esi
41f944:	83 c4 14             	add    $0x14,%esp
41f947:	5f                   	pop    %edi
41f948:	5e                   	pop    %esi
41f949:	5d                   	pop    %ebp
41f94a:	c3                   	ret
41f94b:	8b cf                	mov    %edi,%ecx
41f94d:	e8 0c fe ff ff       	call   0x41f75e
41f952:	ff 75 18             	push   0x18(%ebp)
41f955:	8b 0d 14 50 45 00    	mov    0x455014,%ecx
41f95b:	ff 75 14             	push   0x14(%ebp)
41f95e:	8b 34 85 bc 69 45 00 	mov    0x4569bc(,%eax,4),%esi
41f965:	83 e1 1f             	and    $0x1f,%ecx
41f968:	ff 75 10             	push   0x10(%ebp)
41f96b:	33 35 14 50 45 00    	xor    0x455014,%esi
41f971:	ff 75 0c             	push   0xc(%ebp)
41f974:	d3 ce                	ror    %cl,%esi
41f976:	ff 75 08             	push   0x8(%ebp)
41f979:	85 f6                	test   %esi,%esi
41f97b:	75 bd                	jne    0x41f93a
41f97d:	e8 2e 00 00 00       	call   0x41f9b0
41f982:	cc                   	int3
41f983:	33 c0                	xor    %eax,%eax
41f985:	50                   	push   %eax
41f986:	50                   	push   %eax
41f987:	50                   	push   %eax
41f988:	50                   	push   %eax
41f989:	50                   	push   %eax
41f98a:	e8 40 ff ff ff       	call   0x41f8cf
41f98f:	83 c4 14             	add    $0x14,%esp
41f992:	c3                   	ret
41f993:	8b ff                	mov    %edi,%edi
41f995:	56                   	push   %esi
41f996:	33 f6                	xor    %esi,%esi
41f998:	56                   	push   %esi
41f999:	56                   	push   %esi
41f99a:	56                   	push   %esi
41f99b:	56                   	push   %esi
41f99c:	56                   	push   %esi
41f99d:	e8 2d ff ff ff       	call   0x41f8cf
41f9a2:	83 c4 14             	add    $0x14,%esp
41f9a5:	56                   	push   %esi
41f9a6:	56                   	push   %esi
41f9a7:	56                   	push   %esi
41f9a8:	56                   	push   %esi
41f9a9:	56                   	push   %esi
41f9aa:	e8 01 00 00 00       	call   0x41f9b0
41f9af:	cc                   	int3
41f9b0:	6a 17                	push   $0x17
41f9b2:	ff 15 7c e1 43 00    	call   *0x43e17c
41f9b8:	85 c0                	test   %eax,%eax
41f9ba:	74 05                	je     0x41f9c1
41f9bc:	6a 05                	push   $0x5
41f9be:	59                   	pop    %ecx
41f9bf:	cd 29                	int    $0x29
41f9c1:	56                   	push   %esi
41f9c2:	6a 01                	push   $0x1
41f9c4:	be 17 04 00 c0       	mov    $0xc0000417,%esi
41f9c9:	56                   	push   %esi
41f9ca:	6a 02                	push   $0x2
41f9cc:	e8 b6 fd ff ff       	call   0x41f787
41f9d1:	83 c4 0c             	add    $0xc,%esp
41f9d4:	56                   	push   %esi
41f9d5:	ff 15 f4 e1 43 00    	call   *0x43e1f4
41f9db:	50                   	push   %eax
41f9dc:	ff 15 3c e1 43 00    	call   *0x43e13c
41f9e2:	5e                   	pop    %esi
41f9e3:	c3                   	ret
41f9e4:	8b ff                	mov    %edi,%edi
41f9e6:	55                   	push   %ebp
41f9e7:	8b ec                	mov    %esp,%ebp
41f9e9:	51                   	push   %ecx
41f9ea:	51                   	push   %ecx
41f9eb:	8b 55 1c             	mov    0x1c(%ebp),%edx
41f9ee:	53                   	push   %ebx
41f9ef:	56                   	push   %esi
41f9f0:	8b 75 20             	mov    0x20(%ebp),%esi
41f9f3:	85 d2                	test   %edx,%edx
41f9f5:	75 23                	jne    0x41fa1a
41f9f7:	56                   	push   %esi
41f9f8:	33 db                	xor    %ebx,%ebx
41f9fa:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
41f9fe:	53                   	push   %ebx
41f9ff:	53                   	push   %ebx
41fa00:	53                   	push   %ebx
41fa01:	53                   	push   %ebx
41fa02:	53                   	push   %ebx
41fa03:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
41fa0a:	e8 f7 fe ff ff       	call   0x41f906
41fa0f:	83 c4 18             	add    $0x18,%esp
41fa12:	83 c8 ff             	or     $0xffffffff,%eax
41fa15:	e9 c7 00 00 00       	jmp    0x41fae1
41fa1a:	8b 45 18             	mov    0x18(%ebp),%eax
41fa1d:	57                   	push   %edi
41fa1e:	8b 7d 10             	mov    0x10(%ebp),%edi
41fa21:	85 c0                	test   %eax,%eax
41fa23:	75 12                	jne    0x41fa37
41fa25:	85 ff                	test   %edi,%edi
41fa27:	75 16                	jne    0x41fa3f
41fa29:	39 7d 14             	cmp    %edi,0x14(%ebp)
41fa2c:	0f 85 90 00 00 00    	jne    0x41fac2
41fa32:	e9 a9 00 00 00       	jmp    0x41fae0
41fa37:	85 ff                	test   %edi,%edi
41fa39:	0f 84 83 00 00 00    	je     0x41fac2
41fa3f:	8b 4d 14             	mov    0x14(%ebp),%ecx
41fa42:	85 c9                	test   %ecx,%ecx
41fa44:	74 7c                	je     0x41fac2
41fa46:	8b 5e 18             	mov    0x18(%esi),%ebx
41fa49:	ff 75 24             	push   0x24(%ebp)
41fa4c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41fa4f:	8b 5e 1c             	mov    0x1c(%esi),%ebx
41fa52:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41fa55:	33 db                	xor    %ebx,%ebx
41fa57:	56                   	push   %esi
41fa58:	52                   	push   %edx
41fa59:	3b c8                	cmp    %eax,%ecx
41fa5b:	76 2a                	jbe    0x41fa87
41fa5d:	40                   	inc    %eax
41fa5e:	50                   	push   %eax
41fa5f:	57                   	push   %edi
41fa60:	ff 75 0c             	push   0xc(%ebp)
41fa63:	ff 75 08             	push   0x8(%ebp)
41fa66:	e8 8c 01 00 00       	call   0x41fbf7
41fa6b:	83 c4 1c             	add    $0x1c,%esp
41fa6e:	83 f8 fe             	cmp    $0xfffffffe,%eax
41fa71:	74 36                	je     0x41faa9
41fa73:	85 c0                	test   %eax,%eax
41fa75:	79 69                	jns    0x41fae0
41fa77:	88 1f                	mov    %bl,(%edi)
41fa79:	83 f8 fe             	cmp    $0xfffffffe,%eax
41fa7c:	75 5f                	jne    0x41fadd
41fa7e:	c7 46 18 22 00 00 00 	movl   $0x22,0x18(%esi)
41fa85:	eb 44                	jmp    0x41facb
41fa87:	51                   	push   %ecx
41fa88:	57                   	push   %edi
41fa89:	ff 75 0c             	push   0xc(%ebp)
41fa8c:	ff 75 08             	push   0x8(%ebp)
41fa8f:	e8 63 01 00 00       	call   0x41fbf7
41fa94:	8b 4d 14             	mov    0x14(%ebp),%ecx
41fa97:	83 c4 1c             	add    $0x1c,%esp
41fa9a:	88 5c 0f ff          	mov    %bl,-0x1(%edi,%ecx,1)
41fa9e:	83 f8 fe             	cmp    $0xfffffffe,%eax
41faa1:	75 d0                	jne    0x41fa73
41faa3:	83 7d 18 ff          	cmpl   $0xffffffff,0x18(%ebp)
41faa7:	75 ce                	jne    0x41fa77
41faa9:	38 5e 1c             	cmp    %bl,0x1c(%esi)
41faac:	74 2f                	je     0x41fadd
41faae:	83 7e 18 22          	cmpl   $0x22,0x18(%esi)
41fab2:	75 29                	jne    0x41fadd
41fab4:	8b 45 fc             	mov    -0x4(%ebp),%eax
41fab7:	89 46 18             	mov    %eax,0x18(%esi)
41faba:	8b 45 f8             	mov    -0x8(%ebp),%eax
41fabd:	89 46 1c             	mov    %eax,0x1c(%esi)
41fac0:	eb 1b                	jmp    0x41fadd
41fac2:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
41fac9:	33 db                	xor    %ebx,%ebx
41facb:	56                   	push   %esi
41facc:	53                   	push   %ebx
41facd:	53                   	push   %ebx
41face:	53                   	push   %ebx
41facf:	53                   	push   %ebx
41fad0:	53                   	push   %ebx
41fad1:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
41fad5:	e8 2c fe ff ff       	call   0x41f906
41fada:	83 c4 18             	add    $0x18,%esp
41fadd:	83 c8 ff             	or     $0xffffffff,%eax
41fae0:	5f                   	pop    %edi
41fae1:	5e                   	pop    %esi
41fae2:	5b                   	pop    %ebx
41fae3:	c9                   	leave
41fae4:	c3                   	ret
41fae5:	8b ff                	mov    %edi,%edi
41fae7:	55                   	push   %ebp
41fae8:	8b ec                	mov    %esp,%ebp
41faea:	51                   	push   %ecx
41faeb:	51                   	push   %ecx
41faec:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
41faef:	56                   	push   %esi
41faf0:	8b 75 20             	mov    0x20(%ebp),%esi
41faf3:	85 c9                	test   %ecx,%ecx
41faf5:	75 23                	jne    0x41fb1a
41faf7:	33 c0                	xor    %eax,%eax
41faf9:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
41fafd:	56                   	push   %esi
41fafe:	50                   	push   %eax
41faff:	50                   	push   %eax
41fb00:	50                   	push   %eax
41fb01:	50                   	push   %eax
41fb02:	50                   	push   %eax
41fb03:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
41fb0a:	e8 f7 fd ff ff       	call   0x41f906
41fb0f:	83 c4 18             	add    $0x18,%esp
41fb12:	83 c8 ff             	or     $0xffffffff,%eax
41fb15:	e9 da 00 00 00       	jmp    0x41fbf4
41fb1a:	53                   	push   %ebx
41fb1b:	8b 5d 18             	mov    0x18(%ebp),%ebx
41fb1e:	57                   	push   %edi
41fb1f:	8b 7d 10             	mov    0x10(%ebp),%edi
41fb22:	85 db                	test   %ebx,%ebx
41fb24:	75 14                	jne    0x41fb3a
41fb26:	85 ff                	test   %edi,%edi
41fb28:	75 18                	jne    0x41fb42
41fb2a:	39 7d 14             	cmp    %edi,0x14(%ebp)
41fb2d:	0f 85 a1 00 00 00    	jne    0x41fbd4
41fb33:	33 c0                	xor    %eax,%eax
41fb35:	e9 b8 00 00 00       	jmp    0x41fbf2
41fb3a:	85 ff                	test   %edi,%edi
41fb3c:	0f 84 92 00 00 00    	je     0x41fbd4
41fb42:	8b 45 14             	mov    0x14(%ebp),%eax
41fb45:	85 c0                	test   %eax,%eax
41fb47:	0f 84 87 00 00 00    	je     0x41fbd4
41fb4d:	8b 56 18             	mov    0x18(%esi),%edx
41fb50:	89 55 fc             	mov    %edx,-0x4(%ebp)
41fb53:	8b 56 1c             	mov    0x1c(%esi),%edx
41fb56:	89 55 f8             	mov    %edx,-0x8(%ebp)
41fb59:	ff 75 24             	push   0x24(%ebp)
41fb5c:	56                   	push   %esi
41fb5d:	51                   	push   %ecx
41fb5e:	3b c3                	cmp    %ebx,%eax
41fb60:	76 1e                	jbe    0x41fb80