45d8c1:	83 ec 5c             	sub    $0x5c,%esp
45d8c4:	a1 14 40 4c 00       	mov    0x4c4014,%eax
45d8c9:	33 c5                	xor    %ebp,%eax
45d8cb:	89 45 f0             	mov    %eax,-0x10(%ebp)
45d8ce:	53                   	push   %ebx
45d8cf:	56                   	push   %esi
45d8d0:	57                   	push   %edi
45d8d1:	50                   	push   %eax
45d8d2:	8d 45 f4             	lea    -0xc(%ebp),%eax
45d8d5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
45d8db:	8b f9                	mov    %ecx,%edi
45d8dd:	89 7d 9c             	mov    %edi,-0x64(%ebp)
45d8e0:	8b 77 04             	mov    0x4(%edi),%esi
45d8e3:	8b 5d 0c             	mov    0xc(%ebp),%ebx
45d8e6:	8b 45 08             	mov    0x8(%ebp),%eax
45d8e9:	8b 57 08             	mov    0x8(%edi),%edx
45d8ec:	8b ca                	mov    %edx,%ecx
45d8ee:	89 45 ac             	mov    %eax,-0x54(%ebp)
45d8f1:	8d 04 33             	lea    (%ebx,%esi,1),%eax
45d8f4:	89 75 a8             	mov    %esi,-0x58(%ebp)
45d8f7:	89 47 04             	mov    %eax,0x4(%edi)
45d8fa:	3b c6                	cmp    %esi,%eax
45d8fc:	73 03                	jae    0x45d901
45d8fe:	8d 4a 01             	lea    0x1(%edx),%ecx
45d901:	8b 37                	mov    (%edi),%esi
45d903:	89 4f 08             	mov    %ecx,0x8(%edi)
45d906:	3b ca                	cmp    %edx,%ecx
45d908:	0f 82 28 01 00 00    	jb     0x45da36
45d90e:	8b 76 20             	mov    0x20(%esi),%esi
45d911:	8b ce                	mov    %esi,%ecx
45d913:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45d919:	8b cf                	mov    %edi,%ecx
45d91b:	ff d6                	call   *%esi
45d91d:	8b 0f                	mov    (%edi),%ecx
45d91f:	89 45 a0             	mov    %eax,-0x60(%ebp)
45d922:	48                   	dec    %eax
45d923:	21 45 a8             	and    %eax,-0x58(%ebp)
45d926:	8b 71 58             	mov    0x58(%ecx),%esi
45d929:	8b ce                	mov    %esi,%ecx
45d92b:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45d931:	8b cf                	mov    %edi,%ecx
45d933:	ff d6                	call   *%esi
45d935:	8b 55 a8             	mov    -0x58(%ebp),%edx
45d938:	89 45 a4             	mov    %eax,-0x5c(%ebp)
45d93b:	85 d2                	test   %edx,%edx
45d93d:	0f 84 8b 00 00 00    	je     0x45d9ce
45d943:	8d 34 10             	lea    (%eax,%edx,1),%esi
45d946:	8b 45 a0             	mov    -0x60(%ebp),%eax
45d949:	8d 0c 13             	lea    (%ebx,%edx,1),%ecx
45d94c:	3b c8                	cmp    %eax,%ecx
45d94e:	72 53                	jb     0x45d9a3
45d950:	2b c2                	sub    %edx,%eax
45d952:	50                   	push   %eax
45d953:	ff 75 ac             	push   -0x54(%ebp)
45d956:	56                   	push   %esi
45d957:	e8 c4 dc 00 00       	call   0x46b620
45d95c:	8b 3f                	mov    (%edi),%edi
45d95e:	83 c4 0c             	add    $0xc,%esp
45d961:	8b 77 20             	mov    0x20(%edi),%esi
45d964:	8b ce                	mov    %esi,%ecx
45d966:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45d96c:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
45d96f:	ff d6                	call   *%esi
45d971:	8b 77 54             	mov    0x54(%edi),%esi
45d974:	8b ce                	mov    %esi,%ecx
45d976:	50                   	push   %eax
45d977:	8b 45 a4             	mov    -0x5c(%ebp),%eax
45d97a:	50                   	push   %eax
45d97b:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45d981:	8b 7d 9c             	mov    -0x64(%ebp),%edi
45d984:	8b cf                	mov    %edi,%ecx
45d986:	ff d6                	call   *%esi
45d988:	8b 75 a0             	mov    -0x60(%ebp),%esi
45d98b:	8b c6                	mov    %esi,%eax
45d98d:	8b 55 a8             	mov    -0x58(%ebp),%edx
45d990:	2b c2                	sub    %edx,%eax
45d992:	8b 4d ac             	mov    -0x54(%ebp),%ecx
45d995:	2b d6                	sub    %esi,%edx
45d997:	03 c8                	add    %eax,%ecx
45d999:	8b 45 a4             	mov    -0x5c(%ebp),%eax
45d99c:	89 4d ac             	mov    %ecx,-0x54(%ebp)
45d99f:	03 da                	add    %edx,%ebx
45d9a1:	eb 31                	jmp    0x45d9d4
45d9a3:	53                   	push   %ebx
45d9a4:	ff 75 ac             	push   -0x54(%ebp)
45d9a7:	56                   	push   %esi
45d9a8:	e8 73 dc 00 00       	call   0x46b620
45d9ad:	83 c4 0c             	add    $0xc,%esp
45d9b0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45d9b3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45d9ba:	59                   	pop    %ecx
45d9bb:	5f                   	pop    %edi
45d9bc:	5e                   	pop    %esi
45d9bd:	5b                   	pop    %ebx
45d9be:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45d9c1:	33 cd                	xor    %ebp,%ecx
45d9c3:	e8 02 c0 00 00       	call   0x4699ca
45d9c8:	8b e5                	mov    %ebp,%esp
45d9ca:	5d                   	pop    %ebp
45d9cb:	c2 08 00             	ret    $0x8
45d9ce:	8b 4d ac             	mov    -0x54(%ebp),%ecx
45d9d1:	8b 75 a0             	mov    -0x60(%ebp),%esi
45d9d4:	3b de                	cmp    %esi,%ebx
45d9d6:	72 4b                	jb     0x45da23
45d9d8:	8b 17                	mov    (%edi),%edx
45d9da:	89 55 a8             	mov    %edx,-0x58(%ebp)
45d9dd:	3b c8                	cmp    %eax,%ecx
45d9df:	75 28                	jne    0x45da09
45d9e1:	8b 72 20             	mov    0x20(%edx),%esi
45d9e4:	8b ce                	mov    %esi,%ecx
45d9e6:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45d9ec:	8b cf                	mov    %edi,%ecx
45d9ee:	ff d6                	call   *%esi
45d9f0:	8b 75 a8             	mov    -0x58(%ebp),%esi
45d9f3:	50                   	push   %eax
45d9f4:	8b 45 a4             	mov    -0x5c(%ebp),%eax
45d9f7:	50                   	push   %eax
45d9f8:	8b 76 54             	mov    0x54(%esi),%esi
45d9fb:	8b ce                	mov    %esi,%ecx
45d9fd:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45da03:	8b cf                	mov    %edi,%ecx
45da05:	ff d6                	call   *%esi
45da07:	eb a7                	jmp    0x45d9b0
45da09:	8b 72 54             	mov    0x54(%edx),%esi
45da0c:	53                   	push   %ebx
45da0d:	51                   	push   %ecx
45da0e:	8b ce                	mov    %esi,%ecx
45da10:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45da16:	8b cf                	mov    %edi,%ecx
45da18:	ff d6                	call   *%esi
45da1a:	8b 4d ac             	mov    -0x54(%ebp),%ecx
45da1d:	2b d8                	sub    %eax,%ebx
45da1f:	03 cb                	add    %ebx,%ecx
45da21:	8b d8                	mov    %eax,%ebx
45da23:	85 db                	test   %ebx,%ebx
45da25:	74 89                	je     0x45d9b0
45da27:	8b 45 a4             	mov    -0x5c(%ebp),%eax
45da2a:	3b c1                	cmp    %ecx,%eax
45da2c:	74 82                	je     0x45d9b0
45da2e:	53                   	push   %ebx
45da2f:	51                   	push   %ecx
45da30:	50                   	push   %eax
45da31:	e9 72 ff ff ff       	jmp    0x45d9a8
45da36:	8b 76 08             	mov    0x8(%esi),%esi
45da39:	8d 45 b0             	lea    -0x50(%ebp),%eax
45da3c:	50                   	push   %eax
45da3d:	8b ce                	mov    %esi,%ecx
45da3f:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45da45:	8b cf                	mov    %edi,%ecx
45da47:	ff d6                	call   *%esi
45da49:	50                   	push   %eax
45da4a:	8d 4d c8             	lea    -0x38(%ebp),%ecx
45da4d:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
45da54:	e8 57 fd ff ff       	call   0x45d7b0
45da59:	68 78 22 4c 00       	push   $0x4c2278
45da5e:	8d 45 c8             	lea    -0x38(%ebp),%eax
45da61:	50                   	push   %eax
45da62:	e8 47 db 00 00       	call   0x46b5ae
45da67:	cc                   	int3
45da68:	cc                   	int3
45da69:	cc                   	int3
45da6a:	cc                   	int3
45da6b:	cc                   	int3
45da6c:	cc                   	int3
45da6d:	cc                   	int3
45da6e:	cc                   	int3
45da6f:	cc                   	int3
45da70:	53                   	push   %ebx
45da71:	8b d9                	mov    %ecx,%ebx
45da73:	56                   	push   %esi
45da74:	57                   	push   %edi
45da75:	8b 03                	mov    (%ebx),%eax
45da77:	8b 70 20             	mov    0x20(%eax),%esi
45da7a:	8b ce                	mov    %esi,%ecx
45da7c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45da82:	8b cb                	mov    %ebx,%ecx
45da84:	ff d6                	call   *%esi
45da86:	8b 4c 24 10          	mov    0x10(%esp),%ecx
45da8a:	8d 78 ff             	lea    -0x1(%eax),%edi
45da8d:	23 7b 04             	and    0x4(%ebx),%edi
45da90:	2b c7                	sub    %edi,%eax
45da92:	89 01                	mov    %eax,(%ecx)
45da94:	8b 03                	mov    (%ebx),%eax
45da96:	8b 70 58             	mov    0x58(%eax),%esi
45da99:	8b ce                	mov    %esi,%ecx
45da9b:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45daa1:	8b cb                	mov    %ebx,%ecx
45daa3:	ff d6                	call   *%esi
45daa5:	03 c7                	add    %edi,%eax
45daa7:	5f                   	pop    %edi
45daa8:	5e                   	pop    %esi
45daa9:	5b                   	pop    %ebx
45daaa:	c2 04 00             	ret    $0x4
45daad:	cc                   	int3
45daae:	cc                   	int3
45daaf:	cc                   	int3
45dab0:	56                   	push   %esi
45dab1:	57                   	push   %edi
45dab2:	8b f9                	mov    %ecx,%edi
45dab4:	8b 07                	mov    (%edi),%eax
45dab6:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
45dabd:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
45dac4:	8b 70 48             	mov    0x48(%eax),%esi
45dac7:	8b ce                	mov    %esi,%ecx
45dac9:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45dacf:	8b cf                	mov    %edi,%ecx
45dad1:	ff d6                	call   *%esi
45dad3:	5f                   	pop    %edi
45dad4:	5e                   	pop    %esi
45dad5:	c3                   	ret
45dad6:	cc                   	int3
45dad7:	cc                   	int3
45dad8:	cc                   	int3
45dad9:	cc                   	int3
45dada:	cc                   	int3
45dadb:	cc                   	int3
45dadc:	cc                   	int3
45dadd:	cc                   	int3
45dade:	cc                   	int3
45dadf:	cc                   	int3
45dae0:	83 ec 1c             	sub    $0x1c,%esp
45dae3:	8b 44 24 24          	mov    0x24(%esp),%eax
45dae7:	53                   	push   %ebx
45dae8:	55                   	push   %ebp
45dae9:	56                   	push   %esi
45daea:	57                   	push   %edi
45daeb:	50                   	push   %eax
45daec:	8b d9                	mov    %ecx,%ebx
45daee:	e8 5d f9 fd ff       	call   0x43d450
45daf3:	8b 03                	mov    (%ebx),%eax
45daf5:	8b 70 58             	mov    0x58(%eax),%esi
45daf8:	8b ce                	mov    %esi,%ecx
45dafa:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45db00:	8b cb                	mov    %ebx,%ecx
45db02:	ff d6                	call   *%esi
45db04:	8b 0b                	mov    (%ebx),%ecx
45db06:	89 44 24 20          	mov    %eax,0x20(%esp)
45db0a:	8b 71 5c             	mov    0x5c(%ecx),%esi
45db0d:	8b ce                	mov    %esi,%ecx
45db0f:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45db15:	8b cb                	mov    %ebx,%ecx
45db17:	ff d6                	call   *%esi
45db19:	8b 0b                	mov    (%ebx),%ecx
45db1b:	8b e8                	mov    %eax,%ebp
45db1d:	8b 71 20             	mov    0x20(%ecx),%esi
45db20:	8b ce                	mov    %esi,%ecx
45db22:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45db28:	8b cb                	mov    %ebx,%ecx
45db2a:	ff d6                	call   *%esi
45db2c:	8b 0b                	mov    (%ebx),%ecx
45db2e:	89 44 24 1c          	mov    %eax,0x1c(%esp)
45db32:	8b 71 4c             	mov    0x4c(%ecx),%esi
45db35:	8b ce                	mov    %esi,%ecx
45db37:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45db3d:	8b cb                	mov    %ebx,%ecx
45db3f:	ff d6                	call   *%esi
45db41:	8b 0b                	mov    (%ebx),%ecx
45db43:	8b f8                	mov    %eax,%edi
45db45:	8b 44 24 1c          	mov    0x1c(%esp),%eax
45db49:	83 c0 f8             	add    $0xfffffff8,%eax
45db4c:	89 7c 24 10          	mov    %edi,0x10(%esp)
45db50:	89 44 24 14          	mov    %eax,0x14(%esp)
45db54:	8b 71 20             	mov    0x20(%ecx),%esi
45db57:	8b ce                	mov    %esi,%ecx
45db59:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45db5f:	8b cb                	mov    %ebx,%ecx
45db61:	ff d6                	call   *%esi
45db63:	89 44 24 28          	mov    %eax,0x28(%esp)
45db67:	8d 48 ff             	lea    -0x1(%eax),%ecx
45db6a:	23 4b 04             	and    0x4(%ebx),%ecx
45db6d:	89 4c 24 24          	mov    %ecx,0x24(%esp)
45db71:	8b 0b                	mov    (%ebx),%ecx
45db73:	8b 71 58             	mov    0x58(%ecx),%esi
45db76:	8b ce                	mov    %esi,%ecx
45db78:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45db7e:	8b cb                	mov    %ebx,%ecx
45db80:	ff d6                	call   *%esi
45db82:	8b 4c 24 24          	mov    0x24(%esp),%ecx
45db86:	89 44 24 18          	mov    %eax,0x18(%esp)
45db8a:	c6 04 08 80          	movb   $0x80,(%eax,%ecx,1)
45db8e:	41                   	inc    %ecx
45db8f:	8d 14 08             	lea    (%eax,%ecx,1),%edx
45db92:	8b 44 24 14          	mov    0x14(%esp),%eax
45db96:	3b c8                	cmp    %eax,%ecx
45db98:	77 0d                	ja     0x45dba7
45db9a:	2b c1                	sub    %ecx,%eax
45db9c:	50                   	push   %eax
45db9d:	6a 00                	push   $0x0
45db9f:	52                   	push   %edx
45dba0:	e8 0b e0 00 00       	call   0x46bbb0
45dba5:	eb 4b                	jmp    0x45dbf2
45dba7:	8b 44 24 28          	mov    0x28(%esp),%eax
45dbab:	2b c1                	sub    %ecx,%eax
45dbad:	50                   	push   %eax
45dbae:	6a 00                	push   $0x0
45dbb0:	52                   	push   %edx
45dbb1:	e8 fa df 00 00       	call   0x46bbb0
45dbb6:	8b 3b                	mov    (%ebx),%edi
45dbb8:	83 c4 0c             	add    $0xc,%esp
45dbbb:	8b 77 20             	mov    0x20(%edi),%esi
45dbbe:	8b ce                	mov    %esi,%ecx
45dbc0:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45dbc6:	8b cb                	mov    %ebx,%ecx
45dbc8:	ff d6                	call   *%esi
45dbca:	8b 77 54             	mov    0x54(%edi),%esi
45dbcd:	8b ce                	mov    %esi,%ecx
45dbcf:	50                   	push   %eax
45dbd0:	ff 74 24 1c          	push   0x1c(%esp)
45dbd4:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45dbda:	8b cb                	mov    %ebx,%ecx
45dbdc:	ff d6                	call   *%esi
45dbde:	8b 44 24 14          	mov    0x14(%esp),%eax
45dbe2:	50                   	push   %eax
45dbe3:	6a 00                	push   $0x0
45dbe5:	ff 74 24 20          	push   0x20(%esp)
45dbe9:	e8 c2 df 00 00       	call   0x46bbb0
45dbee:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
45dbf2:	8b 4b 04             	mov    0x4(%ebx),%ecx
45dbf5:	83 c4 0c             	add    $0xc,%esp
45dbf8:	c1 e1 03             	shl    $0x3,%ecx
45dbfb:	85 ff                	test   %edi,%edi
45dbfd:	74 02                	je     0x45dc01
45dbff:	0f c9                	bswap  %ecx
45dc01:	8b 54 24 1c          	mov    0x1c(%esp),%edx
45dc05:	8b 74 24 20          	mov    0x20(%esp),%esi
45dc09:	c1 ea 02             	shr    $0x2,%edx
45dc0c:	8d 04 3a             	lea    (%edx,%edi,1),%eax
45dc0f:	89 4c 86 f8          	mov    %ecx,-0x8(%esi,%eax,4)
45dc13:	8b 43 04             	mov    0x4(%ebx),%eax
45dc16:	8b 4b 08             	mov    0x8(%ebx),%ecx
45dc19:	c1 e8 1d             	shr    $0x1d,%eax
45dc1c:	8d 04 c8             	lea    (%eax,%ecx,8),%eax
45dc1f:	85 ff                	test   %edi,%edi
45dc21:	74 02                	je     0x45dc25
45dc23:	0f c8                	bswap  %eax
45dc25:	2b d7                	sub    %edi,%edx
45dc27:	89 44 96 fc          	mov    %eax,-0x4(%esi,%edx,4)
45dc2b:	8b 3b                	mov    (%ebx),%edi
45dc2d:	8b 77 20             	mov    0x20(%edi),%esi
45dc30:	8b ce                	mov    %esi,%ecx
45dc32:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45dc38:	8b cb                	mov    %ebx,%ecx
45dc3a:	ff d6                	call   *%esi
45dc3c:	8b 77 54             	mov    0x54(%edi),%esi
45dc3f:	8b ce                	mov    %esi,%ecx
45dc41:	50                   	push   %eax
45dc42:	ff 74 24 24          	push   0x24(%esp)
45dc46:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45dc4c:	8b cb                	mov    %ebx,%ecx
45dc4e:	ff d6                	call   *%esi