45179a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4517a0:	50                   	push   %eax
4517a1:	83 ec 2c             	sub    $0x2c,%esp
4517a4:	53                   	push   %ebx
4517a5:	56                   	push   %esi
4517a6:	57                   	push   %edi
4517a7:	a1 14 40 4c 00       	mov    0x4c4014,%eax
4517ac:	33 c5                	xor    %ebp,%eax
4517ae:	50                   	push   %eax
4517af:	8d 45 f4             	lea    -0xc(%ebp),%eax
4517b2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4517b8:	8b f1                	mov    %ecx,%esi
4517ba:	8d 45 c8             	lea    -0x38(%ebp),%eax
4517bd:	50                   	push   %eax
4517be:	e8 ed fc ff ff       	call   0x4514b0
4517c3:	8d 45 c8             	lea    -0x38(%ebp),%eax
4517c6:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4517cd:	50                   	push   %eax
4517ce:	8d 45 dc             	lea    -0x24(%ebp),%eax
4517d1:	50                   	push   %eax
4517d2:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4517d5:	e8 d6 f4 ff ff       	call   0x450cb0
4517da:	83 7e 10 01          	cmpl   $0x1,0x10(%esi)
4517de:	74 1a                	je     0x4517fa
4517e0:	83 7d ec 01          	cmpl   $0x1,-0x14(%ebp)
4517e4:	74 0d                	je     0x4517f3
4517e6:	8d 45 dc             	lea    -0x24(%ebp),%eax
4517e9:	8b ce                	mov    %esi,%ecx
4517eb:	50                   	push   %eax
4517ec:	e8 2f fc ff ff       	call   0x451420
4517f1:	eb 1f                	jmp    0x451812
4517f3:	b8 01 00 00 00       	mov    $0x1,%eax
4517f8:	eb 18                	jmp    0x451812
4517fa:	83 7d ec 01          	cmpl   $0x1,-0x14(%ebp)
4517fe:	74 05                	je     0x451805
451800:	83 c8 ff             	or     $0xffffffff,%eax
451803:	eb 0d                	jmp    0x451812
451805:	8d 45 dc             	lea    -0x24(%ebp),%eax
451808:	8b ce                	mov    %esi,%ecx
45180a:	50                   	push   %eax
45180b:	e8 10 fc ff ff       	call   0x451420
451810:	f7 d8                	neg    %eax
451812:	8b 55 e4             	mov    -0x1c(%ebp),%edx
451815:	85 c0                	test   %eax,%eax
451817:	8b 75 e8             	mov    -0x18(%ebp),%esi
45181a:	8b ca                	mov    %edx,%ecx
45181c:	0f 94 c3             	sete   %bl
45181f:	8b fe                	mov    %esi,%edi
451821:	33 c0                	xor    %eax,%eax
451823:	f3 ab                	rep stos %eax,%es:(%edi)
451825:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
45182c:	56                   	push   %esi
45182d:	83 f8 10             	cmp    $0x10,%eax
451830:	72 07                	jb     0x451839
451832:	e8 29 47 04 00       	call   0x495f60
451837:	eb 05                	jmp    0x45183e
451839:	e8 44 7e 02 00       	call   0x479682
45183e:	8b 75 d4             	mov    -0x2c(%ebp),%esi
451841:	33 c0                	xor    %eax,%eax
451843:	8b 55 d0             	mov    -0x30(%ebp),%edx
451846:	8b fe                	mov    %esi,%edi
451848:	8b ca                	mov    %edx,%ecx
45184a:	83 c4 04             	add    $0x4,%esp
45184d:	f3 ab                	rep stos %eax,%es:(%edi)
45184f:	8d 0c 95 00 00 00 00 	lea    0x0(,%edx,4),%ecx
451856:	56                   	push   %esi
451857:	83 f9 10             	cmp    $0x10,%ecx
45185a:	72 07                	jb     0x451863
45185c:	e8 ff 46 04 00       	call   0x495f60
451861:	eb 05                	jmp    0x451868
451863:	e8 1a 7e 02 00       	call   0x479682
451868:	8a c3                	mov    %bl,%al
45186a:	83 c4 04             	add    $0x4,%esp
45186d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
451870:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
451877:	59                   	pop    %ecx
451878:	5f                   	pop    %edi
451879:	5e                   	pop    %esi
45187a:	5b                   	pop    %ebx
45187b:	8b e5                	mov    %ebp,%esp
45187d:	5d                   	pop    %ebp
45187e:	c3                   	ret
45187f:	cc                   	int3
451880:	55                   	push   %ebp
451881:	8b ec                	mov    %esp,%ebp
451883:	6a ff                	push   $0xffffffff
451885:	68 16 b5 49 00       	push   $0x49b516
45188a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
451890:	50                   	push   %eax
451891:	83 ec 54             	sub    $0x54,%esp
451894:	53                   	push   %ebx
451895:	56                   	push   %esi
451896:	57                   	push   %edi
451897:	a1 14 40 4c 00       	mov    0x4c4014,%eax
45189c:	33 c5                	xor    %ebp,%eax
45189e:	50                   	push   %eax
45189f:	8d 45 f4             	lea    -0xc(%ebp),%eax
4518a2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4518a8:	8b fa                	mov    %edx,%edi
4518aa:	8b d9                	mov    %ecx,%ebx
4518ac:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4518af:	ff 75 0c             	push   0xc(%ebp)
4518b2:	8d 4d a0             	lea    -0x60(%ebp),%ecx
4518b5:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
4518bc:	e8 bf fa fe ff       	call   0x441380
4518c1:	8d 4b 04             	lea    0x4(%ebx),%ecx
4518c4:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4518cb:	e8 c0 c8 ff ff       	call   0x44e190
4518d0:	51                   	push   %ecx
4518d1:	c7 03 dc 6b 4b 00    	movl   $0x4b6bdc,(%ebx)
4518d7:	6a 02                	push   $0x2
4518d9:	c7 43 08 02 00 00 00 	movl   $0x2,0x8(%ebx)
4518e0:	e8 9b 1e 00 00       	call   0x453780
4518e5:	89 43 0c             	mov    %eax,0xc(%ebx)
4518e8:	c7 43 10 00 00 00 00 	movl   $0x0,0x10(%ebx)
4518ef:	6a 01                	push   $0x1
4518f1:	ff 75 08             	push   0x8(%ebp)
4518f4:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
4518fb:	8b 43 0c             	mov    0xc(%ebx),%eax
4518fe:	57                   	push   %edi
4518ff:	53                   	push   %ebx
451900:	c7 45 f0 02 00 00 00 	movl   $0x2,-0x10(%ebp)
451907:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
45190d:	8b 45 a0             	mov    -0x60(%ebp),%eax
451910:	8b 70 54             	mov    0x54(%eax),%esi
451913:	8b ce                	mov    %esi,%ecx
451915:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45191b:	8d 4d a0             	lea    -0x60(%ebp),%ecx
45191e:	ff d6                	call   *%esi
451920:	8d 4d a0             	lea    -0x60(%ebp),%ecx
451923:	e8 b8 00 ff ff       	call   0x4419e0
451928:	8b c3                	mov    %ebx,%eax
45192a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45192d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
451934:	59                   	pop    %ecx
451935:	5f                   	pop    %edi
451936:	5e                   	pop    %esi
451937:	5b                   	pop    %ebx
451938:	8b e5                	mov    %ebp,%esp
45193a:	5d                   	pop    %ebp
45193b:	c3                   	ret
45193c:	cc                   	int3
45193d:	cc                   	int3
45193e:	cc                   	int3
45193f:	cc                   	int3
451940:	55                   	push   %ebp
451941:	8b ec                	mov    %esp,%ebp
451943:	6a ff                	push   $0xffffffff
451945:	68 55 b5 49 00       	push   $0x49b555
45194a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
451950:	50                   	push   %eax
451951:	83 ec 3c             	sub    $0x3c,%esp
451954:	56                   	push   %esi
451955:	57                   	push   %edi
451956:	a1 14 40 4c 00       	mov    0x4c4014,%eax
45195b:	33 c5                	xor    %ebp,%eax
45195d:	50                   	push   %eax
45195e:	8d 45 f4             	lea    -0xc(%ebp),%eax
451961:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
451967:	8b f2                	mov    %edx,%esi
451969:	8b f9                	mov    %ecx,%edi
45196b:	89 7d f0             	mov    %edi,-0x10(%ebp)
45196e:	8d 45 b8             	lea    -0x48(%ebp),%eax
451971:	c7 45 bc 08 6b 4b 00 	movl   $0x4b6b08,-0x44(%ebp)
451978:	8d 4d c8             	lea    -0x38(%ebp),%ecx
45197b:	89 45 c0             	mov    %eax,-0x40(%ebp)
45197e:	e8 0d c8 ff ff       	call   0x44e190
451983:	51                   	push   %ecx
451984:	6a 02                	push   $0x2
451986:	c7 45 c4 dc 6b 4b 00 	movl   $0x4b6bdc,-0x3c(%ebp)
45198d:	c7 45 cc 02 00 00 00 	movl   $0x2,-0x34(%ebp)
451994:	e8 e7 1d 00 00       	call   0x453780
451999:	89 45 d0             	mov    %eax,-0x30(%ebp)
45199c:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
4519a3:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
4519aa:	8b 45 d0             	mov    -0x30(%ebp),%eax
4519ad:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4519b3:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4519ba:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4519bd:	c7 45 b8 40 6b 4b 00 	movl   $0x4b6b40,-0x48(%ebp)
4519c4:	e8 c7 c7 ff ff       	call   0x44e190
4519c9:	51                   	push   %ecx
4519ca:	6a 02                	push   $0x2
4519cc:	c7 45 d8 dc 6b 4b 00 	movl   $0x4b6bdc,-0x28(%ebp)
4519d3:	c7 45 e0 02 00 00 00 	movl   $0x2,-0x20(%ebp)
4519da:	e8 a1 1d 00 00       	call   0x453780
4519df:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4519e2:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4519e9:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
4519f0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4519f3:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4519f9:	ff 75 08             	push   0x8(%ebp)
4519fc:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
451a03:	8b 45 b8             	mov    -0x48(%ebp),%eax
451a06:	56                   	push   %esi
451a07:	8b 70 64             	mov    0x64(%eax),%esi
451a0a:	8b ce                	mov    %esi,%ecx
451a0c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
451a12:	8d 4d b8             	lea    -0x48(%ebp),%ecx
451a15:	ff d6                	call   *%esi
451a17:	50                   	push   %eax
451a18:	8b cf                	mov    %edi,%ecx
451a1a:	e8 21 ca ff ff       	call   0x44e440
451a1f:	8d 4d b8             	lea    -0x48(%ebp),%ecx
451a22:	e8 79 cc fb ff       	call   0x40e6a0
451a27:	8b c7                	mov    %edi,%eax
451a29:	8b 4d f4             	mov    -0xc(%ebp),%ecx
451a2c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
451a33:	59                   	pop    %ecx
451a34:	5f                   	pop    %edi
451a35:	5e                   	pop    %esi
451a36:	8b e5                	mov    %ebp,%esp
451a38:	5d                   	pop    %ebp
451a39:	c3                   	ret
451a3a:	cc                   	int3
451a3b:	cc                   	int3
451a3c:	cc                   	int3
451a3d:	cc                   	int3
451a3e:	cc                   	int3
451a3f:	cc                   	int3
451a40:	8b 51 14             	mov    0x14(%ecx),%edx
451a43:	33 c0                	xor    %eax,%eax
451a45:	56                   	push   %esi
451a46:	8b 71 18             	mov    0x18(%ecx),%esi
451a49:	8b ca                	mov    %edx,%ecx
451a4b:	57                   	push   %edi
451a4c:	8b fe                	mov    %esi,%edi
451a4e:	f3 ab                	rep stos %eax,%es:(%edi)
451a50:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
451a57:	56                   	push   %esi
451a58:	83 f8 10             	cmp    $0x10,%eax
451a5b:	72 0b                	jb     0x451a68
451a5d:	e8 fe 44 04 00       	call   0x495f60
451a62:	83 c4 04             	add    $0x4,%esp
451a65:	5f                   	pop    %edi
451a66:	5e                   	pop    %esi
451a67:	c3                   	ret
451a68:	e8 15 7c 02 00       	call   0x479682
451a6d:	83 c4 04             	add    $0x4,%esp
451a70:	5f                   	pop    %edi
451a71:	5e                   	pop    %esi
451a72:	c3                   	ret
451a73:	cc                   	int3
451a74:	cc                   	int3
451a75:	cc                   	int3
451a76:	cc                   	int3
451a77:	cc                   	int3
451a78:	cc                   	int3
451a79:	cc                   	int3
451a7a:	cc                   	int3
451a7b:	cc                   	int3
451a7c:	cc                   	int3
451a7d:	cc                   	int3
451a7e:	cc                   	int3
451a7f:	cc                   	int3
451a80:	55                   	push   %ebp
451a81:	8d 6c 24 98          	lea    -0x68(%esp),%ebp
451a85:	83 ec 68             	sub    $0x68,%esp
451a88:	6a ff                	push   $0xffffffff
451a8a:	68 43 b6 49 00       	push   $0x49b643
451a8f:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
451a95:	50                   	push   %eax
451a96:	83 ec 3c             	sub    $0x3c,%esp
451a99:	53                   	push   %ebx
451a9a:	56                   	push   %esi
451a9b:	57                   	push   %edi
451a9c:	a1 14 40 4c 00       	mov    0x4c4014,%eax
451aa1:	33 c5                	xor    %ebp,%eax
451aa3:	50                   	push   %eax
451aa4:	8d 45 f4             	lea    -0xc(%ebp),%eax
451aa7:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
451aad:	8b d9                	mov    %ecx,%ebx
451aaf:	8b 75 74             	mov    0x74(%ebp),%esi
451ab2:	c7 45 60 00 00 00 00 	movl   $0x0,0x60(%ebp)
451ab9:	83 7b 10 01          	cmpl   $0x1,0x10(%ebx)
451abd:	75 48                	jne    0x451b07
451abf:	56                   	push   %esi
451ac0:	8d 45 48             	lea    0x48(%ebp),%eax
451ac3:	50                   	push   %eax
451ac4:	e8 57 f7 ff ff       	call   0x451220
451ac9:	56                   	push   %esi
451aca:	ff 75 70             	push   0x70(%ebp)
451acd:	8b c8                	mov    %eax,%ecx
451acf:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
451ad6:	e8 a5 ff ff ff       	call   0x451a80
451adb:	8b 55 50             	mov    0x50(%ebp),%edx
451ade:	8b 75 54             	mov    0x54(%ebp),%esi
451ae1:	33 c0                	xor    %eax,%eax
451ae3:	8b fe                	mov    %esi,%edi
451ae5:	8b ca                	mov    %edx,%ecx
451ae7:	f3 ab                	rep stos %eax,%es:(%edi)
451ae9:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
451af0:	56                   	push   %esi
451af1:	83 f8 10             	cmp    $0x10,%eax
451af4:	0f 82 57 03 00 00    	jb     0x451e51
451afa:	e8 61 44 04 00       	call   0x495f60
451aff:	8b 45 70             	mov    0x70(%ebp),%eax
451b02:	e9 36 04 00 00       	jmp    0x451f3d
451b07:	8b 4e 08             	mov    0x8(%esi),%ecx
451b0a:	8d 46 0c             	lea    0xc(%esi),%eax
451b0d:	85 c9                	test   %ecx,%ecx
451b0f:	74 12                	je     0x451b23
451b11:	8b d0                	mov    %eax,%edx
451b13:	8b 00                	mov    (%eax),%eax
451b15:	89 55 5c             	mov    %edx,0x5c(%ebp)
451b18:	f6 00 01             	testb  $0x1,(%eax)
451b1b:	8b c2                	mov    %edx,%eax
451b1d:	0f 85 3b 03 00 00    	jne    0x451e5e
451b23:	83 7e 10 01          	cmpl   $0x1,0x10(%esi)
451b27:	74 3a                	je     0x451b63
451b29:	8b 00                	mov    (%eax),%eax
451b2b:	83 38 00             	cmpl   $0x0,(%eax)
451b2e:	75 33                	jne    0x451b63
451b30:	85 c9                	test   %ecx,%ecx
451b32:	74 19                	je     0x451b4d
451b34:	8d 04 88             	lea    (%eax,%ecx,4),%eax
451b37:	83 c0 fc             	add    $0xfffffffc,%eax
451b3a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
451b40:	83 38 00             	cmpl   $0x0,(%eax)
451b43:	75 1e                	jne    0x451b63
451b45:	83 e8 04             	sub    $0x4,%eax
451b48:	83 e9 01             	sub    $0x1,%ecx
451b4b:	75 f3                	jne    0x451b40
451b4d:	e8 5e 1d 00 00       	call   0x4538b0
451b52:	8b 4d 70             	mov    0x70(%ebp),%ecx
451b55:	50                   	push   %eax
451b56:	e8 e5 c8 ff ff       	call   0x44e440
451b5b:	8b 45 70             	mov    0x70(%ebp),%eax
451b5e:	e9 dd 03 00 00       	jmp    0x451f40
451b63:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
451b67:	76 e4                	jbe    0x451b4d
451b69:	8b 43 0c             	mov    0xc(%ebx),%eax
451b6c:	f6 00 01             	testb  $0x1,(%eax)
451b6f:	74 dc                	je     0x451b4d
451b71:	e8 5a 1e 00 00       	call   0x4539d0
451b76:	83 7b 10 01          	cmpl   $0x1,0x10(%ebx)
451b7a:	8b 48 10             	mov    0x10(%eax),%ecx
451b7d:	74 0f                	je     0x451b8e
451b7f:	83 f9 01             	cmp    $0x1,%ecx
451b82:	74 33                	je     0x451bb7
451b84:	50                   	push   %eax
451b85:	8b cb                	mov    %ebx,%ecx
451b87:	e8 94 f8 ff ff       	call   0x451420
451b8c:	eb 0f                	jmp    0x451b9d
451b8e:	83 f9 01             	cmp    $0x1,%ecx
451b91:	75 24                	jne    0x451bb7
451b93:	50                   	push   %eax
451b94:	8b cb                	mov    %ebx,%ecx
451b96:	e8 85 f8 ff ff       	call   0x451420
451b9b:	f7 d8                	neg    %eax