45a9ef:	8b 85 50 ff ff ff    	mov    -0xb0(%ebp),%eax
45a9f5:	85 c0                	test   %eax,%eax
45a9f7:	75 04                	jne    0x45a9fd
45a9f9:	8b c7                	mov    %edi,%eax
45a9fb:	eb 03                	jmp    0x45aa00
45a9fd:	8b 40 04             	mov    0x4(%eax),%eax
45aa00:	50                   	push   %eax
45aa01:	ff b5 44 ff ff ff    	push   -0xbc(%ebp)
45aa07:	ff 15 90 75 4a 00    	call   *0x4a7590
45aa0d:	89 bd 5c ff ff ff    	mov    %edi,-0xa4(%ebp)
45aa13:	c7 85 58 ff ff ff 1c 	movl   $0x40141c,-0xa8(%ebp)
45aa1a:	14 40 00
45aa1d:	57                   	push   %edi
45aa1e:	6a 01                	push   $0x1
45aa20:	6a 01                	push   $0x1
45aa22:	ff 75 ac             	push   -0x54(%ebp)
45aa25:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
45aa29:	ff 75 a0             	push   -0x60(%ebp)
45aa2c:	ff 15 5c 71 4a 00    	call   *0x4a715c
45aa32:	50                   	push   %eax
45aa33:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
45aa39:	ff 15 8c 75 4a 00    	call   *0x4a758c
45aa3f:	85 c0                	test   %eax,%eax
45aa41:	75 26                	jne    0x45aa69
45aa43:	6a 01                	push   $0x1
45aa45:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
45aa4a:	e8 2a 32 ff ff       	call   0x44dc79
45aa4f:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
45aa55:	c7 85 58 ff ff ff 1c 	movl   $0x40141c,-0xa8(%ebp)
45aa5c:	14 40 00
45aa5f:	e8 6f 53 fc ff       	call   0x41fdd3
45aa64:	e9 4e 02 00 00       	jmp    0x45acb7
45aa69:	ff b5 64 ff ff ff    	push   -0x9c(%ebp)
45aa6f:	ff 35 b8 48 4a 00    	push   0x4a48b8
45aa75:	ff 15 90 75 4a 00    	call   *0x4a7590
45aa7b:	b9 c4 48 4a 00       	mov    $0x4a48c4,%ecx
45aa80:	ff 15 28 75 4a 00    	call   *0x4a7528
45aa86:	8d 8d 60 ff ff ff    	lea    -0xa0(%ebp),%ecx
45aa8c:	ff 15 c4 76 4a 00    	call   *0x4a76c4
45aa92:	50                   	push   %eax
45aa93:	b9 c4 48 4a 00       	mov    $0x4a48c4,%ecx
45aa98:	ff 15 8c 75 4a 00    	call   *0x4a758c
45aa9e:	ff b5 5c ff ff ff    	push   -0xa4(%ebp)
45aaa4:	8b 45 a0             	mov    -0x60(%ebp),%eax
45aaa7:	ff 35 d8 48 4a 00    	push   0x4a48d8
45aaad:	a3 cc 48 4a 00       	mov    %eax,0x4a48cc
45aab2:	8b 45 ac             	mov    -0x54(%ebp),%eax
45aab5:	a3 d0 48 4a 00       	mov    %eax,0x4a48d0
45aaba:	ff 15 90 75 4a 00    	call   *0x4a7590
45aac0:	b9 e4 48 4a 00       	mov    $0x4a48e4,%ecx
45aac5:	ff 15 28 75 4a 00    	call   *0x4a7528
45aacb:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
45aad1:	ff 15 c4 76 4a 00    	call   *0x4a76c4
45aad7:	50                   	push   %eax
45aad8:	b9 e4 48 4a 00       	mov    $0x4a48e4,%ecx
45aadd:	ff 15 8c 75 4a 00    	call   *0x4a758c
45aae3:	51                   	push   %ecx
45aae4:	b9 a0 48 4a 00       	mov    $0x4a48a0,%ecx
45aae9:	e8 b6 f7 fc ff       	call   0x42a2a4
45aaee:	83 3d 50 49 4a 00 00 	cmpl   $0x0,0x4a4950
45aaf5:	0f 84 6a 01 00 00    	je     0x45ac65
45aafb:	6a 10                	push   $0x10
45aafd:	89 7d 80             	mov    %edi,-0x80(%ebp)
45ab00:	ff 15 08 c0 4a 00    	call   *0x4ac008
45ab06:	8b f0                	mov    %eax,%esi
45ab08:	89 b5 7c ff ff ff    	mov    %esi,-0x84(%ebp)
45ab0e:	85 f6                	test   %esi,%esi
45ab10:	74 26                	je     0x45ab38
45ab12:	8b 0d 4c 49 4a 00    	mov    0x4a494c,%ecx
45ab18:	e8 bc ea fd ff       	call   0x4395d9
45ab1d:	50                   	push   %eax
45ab1e:	ff 35 54 49 4a 00    	push   0x4a4954
45ab24:	8b ce                	mov    %esi,%ecx
45ab26:	ff 35 58 49 4a 00    	push   0x4a4958
45ab2c:	e8 cb ea fd ff       	call   0x4395fc
45ab31:	8b f0                	mov    %eax,%esi
45ab33:	89 75 b0             	mov    %esi,-0x50(%ebp)
45ab36:	eb 05                	jmp    0x45ab3d
45ab38:	8b f7                	mov    %edi,%esi
45ab3a:	89 7d b0             	mov    %edi,-0x50(%ebp)
45ab3d:	56                   	push   %esi
45ab3e:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
45ab44:	e8 5f ea fd ff       	call   0x4395a8
45ab49:	6a 01                	push   $0x1
45ab4b:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
45ab51:	ff 15 4c c0 4a 00    	call   *0x4ac04c
45ab57:	85 c0                	test   %eax,%eax
45ab59:	74 06                	je     0x45ab61
45ab5b:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
45ab61:	83 7b 08 5a          	cmpl   $0x5a,0x8(%ebx)
45ab65:	8b ce                	mov    %esi,%ecx
45ab67:	75 43                	jne    0x45abac
45ab69:	e8 13 ea fd ff       	call   0x439581
45ab6e:	8b ce                	mov    %esi,%ecx
45ab70:	89 45 d4             	mov    %eax,-0x2c(%ebp)
45ab73:	89 7d d8             	mov    %edi,-0x28(%ebp)
45ab76:	e8 df e9 fd ff       	call   0x43955a
45ab7b:	8b 4d b0             	mov    -0x50(%ebp),%ecx
45ab7e:	8b f0                	mov    %eax,%esi
45ab80:	e8 fc e9 fd ff       	call   0x439581
45ab85:	51                   	push   %ecx
45ab86:	89 45 dc             	mov    %eax,-0x24(%ebp)
45ab89:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
45ab8f:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45ab92:	89 75 e0             	mov    %esi,-0x20(%ebp)
45ab95:	50                   	push   %eax
45ab96:	ff 35 4c 49 4a 00    	push   0x4a494c
45ab9c:	89 7d e4             	mov    %edi,-0x1c(%ebp)
45ab9f:	89 7d e8             	mov    %edi,-0x18(%ebp)
45aba2:	e8 7f e9 fd ff       	call   0x439526
45aba7:	8b 7d b0             	mov    -0x50(%ebp),%edi
45abaa:	eb 40                	jmp    0x45abec
45abac:	e8 a9 e9 fd ff       	call   0x43955a
45abb1:	8b ce                	mov    %esi,%ecx
45abb3:	89 7d d4             	mov    %edi,-0x2c(%ebp)
45abb6:	89 45 d8             	mov    %eax,-0x28(%ebp)
45abb9:	89 7d dc             	mov    %edi,-0x24(%ebp)
45abbc:	89 7d e0             	mov    %edi,-0x20(%ebp)
45abbf:	e8 96 e9 fd ff       	call   0x43955a
45abc4:	8b 7d b0             	mov    -0x50(%ebp),%edi
45abc7:	8b f0                	mov    %eax,%esi
45abc9:	8b cf                	mov    %edi,%ecx
45abcb:	e8 b1 e9 fd ff       	call   0x439581
45abd0:	51                   	push   %ecx
45abd1:	89 45 e4             	mov    %eax,-0x1c(%ebp)
45abd4:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
45abda:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45abdd:	89 75 e8             	mov    %esi,-0x18(%ebp)
45abe0:	50                   	push   %eax
45abe1:	ff 35 4c 49 4a 00    	push   0x4a494c
45abe7:	e8 3a e9 fd ff       	call   0x439526
45abec:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
45abf2:	ff 15 2c c0 4a 00    	call   *0x4ac02c
45abf8:	68 00 00 00 ff       	push   $0xff000000
45abfd:	8d 45 80             	lea    -0x80(%ebp),%eax
45ac00:	50                   	push   %eax
45ac01:	ff 77 04             	push   0x4(%edi)
45ac04:	ff 15 24 c0 4a 00    	call   *0x4ac024
45ac0a:	85 c0                	test   %eax,%eax
45ac0c:	74 03                	je     0x45ac11
45ac0e:	89 47 08             	mov    %eax,0x8(%edi)
45ac11:	8b cf                	mov    %edi,%ecx
45ac13:	e8 69 e9 fd ff       	call   0x439581
45ac18:	8b cf                	mov    %edi,%ecx
45ac1a:	a3 54 49 4a 00       	mov    %eax,0x4a4954
45ac1f:	e8 36 e9 fd ff       	call   0x43955a
45ac24:	a3 58 49 4a 00       	mov    %eax,0x4a4958
45ac29:	a1 4c 49 4a 00       	mov    0x4a494c,%eax
45ac2e:	85 c0                	test   %eax,%eax
45ac30:	74 16                	je     0x45ac48
45ac32:	8b 00                	mov    (%eax),%eax
45ac34:	6a 01                	push   $0x1
45ac36:	8b 30                	mov    (%eax),%esi
45ac38:	8b ce                	mov    %esi,%ecx
45ac3a:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ac40:	8b 0d 4c 49 4a 00    	mov    0x4a494c,%ecx
45ac46:	ff d6                	call   *%esi
45ac48:	ff 35 50 49 4a 00    	push   0x4a4950
45ac4e:	89 3d 4c 49 4a 00    	mov    %edi,0x4a494c
45ac54:	ff 15 60 71 4a 00    	call   *0x4a7160
45ac5a:	8b 45 80             	mov    -0x80(%ebp),%eax
45ac5d:	8b 75 9c             	mov    -0x64(%ebp),%esi
45ac60:	a3 50 49 4a 00       	mov    %eax,0x4a4950
45ac65:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45ac68:	8b ce                	mov    %esi,%ecx
45ac6a:	50                   	push   %eax
45ac6b:	e8 b7 ba fd ff       	call   0x436727
45ac70:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
45ac74:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
45ac7a:	c7 85 58 ff ff ff 1c 	movl   $0x40141c,-0xa8(%ebp)
45ac81:	14 40 00
45ac84:	e8 4a 51 fc ff       	call   0x41fdd3
45ac89:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
45ac8f:	ff 15 9c 75 4a 00    	call   *0x4a759c
45ac95:	eb 20                	jmp    0x45acb7
45ac97:	8b 45 90             	mov    -0x70(%ebp),%eax
45ac9a:	85 c0                	test   %eax,%eax
45ac9c:	74 0d                	je     0x45acab
45ac9e:	57                   	push   %edi
45ac9f:	50                   	push   %eax
45aca0:	b9 b4 48 4a 00       	mov    $0x4a48b4,%ecx
45aca5:	ff 15 98 75 4a 00    	call   *0x4a7598
45acab:	6a 01                	push   $0x1
45acad:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
45acb2:	e8 f0 2f ff ff       	call   0x44dca7
45acb7:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
45acbd:	ff 15 84 75 4a 00    	call   *0x4a7584
45acc3:	8d 8d 60 ff ff ff    	lea    -0xa0(%ebp),%ecx
45acc9:	c7 85 60 ff ff ff 1c 	movl   $0x40141c,-0xa0(%ebp)
45acd0:	14 40 00
45acd3:	e8 fb 50 fc ff       	call   0x41fdd3
45acd8:	eb 14                	jmp    0x45acee
45acda:	8b 45 90             	mov    -0x70(%ebp),%eax
45acdd:	85 c0                	test   %eax,%eax
45acdf:	74 0d                	je     0x45acee
45ace1:	57                   	push   %edi
45ace2:	50                   	push   %eax
45ace3:	b9 b4 48 4a 00       	mov    $0x4a48b4,%ecx
45ace8:	ff 15 98 75 4a 00    	call   *0x4a7598
45acee:	8b 4d ec             	mov    -0x14(%ebp),%ecx
45acf1:	e8 f7 61 03 00       	call   0x490eed
45acf6:	c2 04 00             	ret    $0x4
45acf9:	cc                   	int3
45acfa:	cc                   	int3
45acfb:	cc                   	int3
45acfc:	cc                   	int3
45acfd:	cc                   	int3
45acfe:	cc                   	int3
45acff:	cc                   	int3
45ad00:	b8 b0 46 40 00       	mov    $0x4046b0,%eax
45ad05:	c3                   	ret
45ad06:	cc                   	int3
45ad07:	cc                   	int3
45ad08:	cc                   	int3
45ad09:	cc                   	int3
45ad0a:	cc                   	int3
45ad0b:	cc                   	int3
45ad0c:	cc                   	int3
45ad0d:	cc                   	int3
45ad0e:	cc                   	int3
45ad0f:	cc                   	int3
45ad10:	b8 a8 46 40 00       	mov    $0x4046a8,%eax
45ad15:	c3                   	ret
45ad16:	6a 04                	push   $0x4
45ad18:	b8 22 43 49 00       	mov    $0x494322,%eax
45ad1d:	e8 b1 57 03 00       	call   0x4904d3
45ad22:	8b f1                	mov    %ecx,%esi
45ad24:	89 75 f0             	mov    %esi,-0x10(%ebp)
45ad27:	ff 15 a0 76 4a 00    	call   *0x4a76a0
45ad2d:	33 c9                	xor    %ecx,%ecx
45ad2f:	b8 2c 36 40 00       	mov    $0x40362c,%eax
45ad34:	89 4d fc             	mov    %ecx,-0x4(%ebp)
45ad37:	c7 06 84 45 40 00    	movl   $0x404584,(%esi)
45ad3d:	89 4e 48             	mov    %ecx,0x48(%esi)
45ad40:	89 46 44             	mov    %eax,0x44(%esi)
45ad43:	89 4e 50             	mov    %ecx,0x50(%esi)
45ad46:	89 46 4c             	mov    %eax,0x4c(%esi)
45ad49:	b8 ec 2c 40 00       	mov    $0x402cec,%eax
45ad4e:	89 4e 58             	mov    %ecx,0x58(%esi)
45ad51:	89 46 54             	mov    %eax,0x54(%esi)
45ad54:	89 4e 60             	mov    %ecx,0x60(%esi)
45ad57:	89 46 5c             	mov    %eax,0x5c(%esi)
45ad5a:	89 4e 68             	mov    %ecx,0x68(%esi)
45ad5d:	c7 46 64 c0 15 40 00 	movl   $0x4015c0,0x64(%esi)
45ad64:	8b 45 08             	mov    0x8(%ebp),%eax
45ad67:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
45ad6b:	d9 e8                	fld1
45ad6d:	dd 56 70             	fstl   0x70(%esi)
45ad70:	dd 5e 78             	fstpl  0x78(%esi)
45ad73:	d9 ee                	fldz
45ad75:	c7 86 80 00 00 00 64 	movl   $0x64,0x80(%esi)
45ad7c:	00 00 00
45ad7f:	89 8e 88 00 00 00    	mov    %ecx,0x88(%esi)
45ad85:	89 8e 8c 00 00 00    	mov    %ecx,0x8c(%esi)
45ad8b:	8b ce                	mov    %esi,%ecx
45ad8d:	dd 9e 90 00 00 00    	fstpl  0x90(%esi)
45ad93:	89 46 40             	mov    %eax,0x40(%esi)
45ad96:	e8 0b 03 00 00       	call   0x45b0a6
45ad9b:	8b c6                	mov    %esi,%eax
45ad9d:	e8 ff 56 03 00       	call   0x4904a1
45ada2:	c2 04 00             	ret    $0x4
45ada5:	cc                   	int3
45ada6:	cc                   	int3
45ada7:	cc                   	int3
45ada8:	cc                   	int3
45ada9:	cc                   	int3
45adaa:	cc                   	int3
45adab:	cc                   	int3
45adac:	cc                   	int3
45adad:	cc                   	int3
45adae:	cc                   	int3
45adaf:	cc                   	int3
45adb0:	8b ff                	mov    %edi,%edi
45adb2:	55                   	push   %ebp
45adb3:	8b ec                	mov    %esp,%ebp
45adb5:	56                   	push   %esi
45adb6:	8b f1                	mov    %ecx,%esi
45adb8:	e8 15 00 00 00       	call   0x45add2
45adbd:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
45adc1:	74 08                	je     0x45adcb
45adc3:	56                   	push   %esi
45adc4:	ff 15 10 74 4a 00    	call   *0x4a7410
45adca:	59                   	pop    %ecx
45adcb:	8b c6                	mov    %esi,%eax
45adcd:	5e                   	pop    %esi
45adce:	5d                   	pop    %ebp
45adcf:	c2 04 00             	ret    $0x4
45add2:	8b ff                	mov    %edi,%edi
45add4:	55                   	push   %ebp
45add5:	8b ec                	mov    %esp,%ebp
45add7:	6a ff                	push   $0xffffffff
45add9:	68 3d 43 49 00       	push   $0x49433d
45adde:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
45ade4:	50                   	push   %eax
45ade5:	51                   	push   %ecx
45ade6:	53                   	push   %ebx
45ade7:	56                   	push   %esi
45ade8:	57                   	push   %edi
45ade9:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
45adee:	33 c5                	xor    %ebp,%eax
45adf0:	50                   	push   %eax
45adf1:	8d 45 f4             	lea    -0xc(%ebp),%eax
45adf4:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
45adfa:	8b f1                	mov    %ecx,%esi
45adfc:	89 75 f0             	mov    %esi,-0x10(%ebp)
45adff:	8d 4e 44             	lea    0x44(%esi),%ecx
45ae02:	c7 06 84 45 40 00    	movl   $0x404584,(%esi)
45ae08:	ff 15 28 75 4a 00    	call   *0x4a7528
45ae0e:	8d 4e 4c             	lea    0x4c(%esi),%ecx
45ae11:	ff 15 28 75 4a 00    	call   *0x4a7528
45ae17:	8d 5e 54             	lea    0x54(%esi),%ebx
45ae1a:	8b cb                	mov    %ebx,%ecx
45ae1c:	ff 15 28 75 4a 00    	call   *0x4a7528
45ae22:	8d 7e 5c             	lea    0x5c(%esi),%edi
45ae25:	8b cf                	mov    %edi,%ecx
45ae27:	ff 15 28 75 4a 00    	call   *0x4a7528
45ae2d:	8d 4e 64             	lea    0x64(%esi),%ecx
45ae30:	ff 15 28 75 4a 00    	call   *0x4a7528
45ae36:	8d 4e 64             	lea    0x64(%esi),%ecx
45ae39:	c7 46 64 c0 15 40 00 	movl   $0x4015c0,0x64(%esi)
45ae40:	e8 8e 4f fc ff       	call   0x41fdd3
45ae45:	be ec 2c 40 00       	mov    $0x402cec,%esi
45ae4a:	8b cf                	mov    %edi,%ecx
45ae4c:	89 37                	mov    %esi,(%edi)
45ae4e:	e8 80 4f fc ff       	call   0x41fdd3
45ae53:	8b cb                	mov    %ebx,%ecx
45ae55:	89 33                	mov    %esi,(%ebx)
45ae57:	e8 77 4f fc ff       	call   0x41fdd3
45ae5c:	8b 75 f0             	mov    -0x10(%ebp),%esi
45ae5f:	bf 2c 36 40 00       	mov    $0x40362c,%edi
45ae64:	8d 4e 4c             	lea    0x4c(%esi),%ecx
45ae67:	89 39                	mov    %edi,(%ecx)
45ae69:	e8 65 4f fc ff       	call   0x41fdd3
45ae6e:	8d 4e 44             	lea    0x44(%esi),%ecx
45ae71:	89 39                	mov    %edi,(%ecx)
45ae73:	e8 5b 4f fc ff       	call   0x41fdd3
45ae78:	8b ce                	mov    %esi,%ecx
45ae7a:	ff 15 9c 76 4a 00    	call   *0x4a769c
45ae80:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45ae83:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45ae8a:	59                   	pop    %ecx
45ae8b:	5f                   	pop    %edi
45ae8c:	5e                   	pop    %esi
45ae8d:	5b                   	pop    %ebx
45ae8e:	c9                   	leave
45ae8f:	c3                   	ret
45ae90:	8b ff                	mov    %edi,%edi
45ae92:	56                   	push   %esi
45ae93:	8b f1                	mov    %ecx,%esi
45ae95:	ff 15 54 74 4a 00    	call   *0x4a7454