458e13:	ff 15 70 f1 48 00    	call   *0x48f170
458e19:	8b 3d 60 f2 48 00    	mov    0x48f260,%edi
458e1f:	8b d8                	mov    %eax,%ebx
458e21:	6a 02                	push   $0x2
458e23:	6a 00                	push   $0x0
458e25:	6a 00                	push   $0x0
458e27:	53                   	push   %ebx
458e28:	ff d7                	call   *%edi
458e2a:	50                   	push   %eax
458e2b:	8b 45 08             	mov    0x8(%ebp),%eax
458e2e:	ff 30                	push   (%eax)
458e30:	ff d7                	call   *%edi
458e32:	50                   	push   %eax
458e33:	ff 15 64 f1 48 00    	call   *0x48f164
458e39:	6a 02                	push   $0x2
458e3b:	6a 00                	push   $0x0
458e3d:	6a 00                	push   $0x0
458e3f:	8d 43 08             	lea    0x8(%ebx),%eax
458e42:	50                   	push   %eax
458e43:	ff d7                	call   *%edi
458e45:	50                   	push   %eax
458e46:	8b 45 10             	mov    0x10(%ebp),%eax
458e49:	ff 30                	push   (%eax)
458e4b:	ff d7                	call   *%edi
458e4d:	50                   	push   %eax
458e4e:	ff 15 64 f1 48 00    	call   *0x48f164
458e54:	8b 45 0c             	mov    0xc(%ebp),%eax
458e57:	8b 00                	mov    (%eax),%eax
458e59:	89 43 04             	mov    %eax,0x4(%ebx)
458e5c:	33 c0                	xor    %eax,%eax
458e5e:	50                   	push   %eax
458e5f:	50                   	push   %eax
458e60:	53                   	push   %ebx
458e61:	68 74 8e 45 00       	push   $0x458e74
458e66:	50                   	push   %eax
458e67:	50                   	push   %eax
458e68:	ff 15 68 f1 48 00    	call   *0x48f168
458e6e:	5f                   	pop    %edi
458e6f:	5b                   	pop    %ebx
458e70:	5d                   	pop    %ebp
458e71:	c2 0c 00             	ret    $0xc
458e74:	55                   	push   %ebp
458e75:	8b ec                	mov    %esp,%ebp
458e77:	57                   	push   %edi
458e78:	8b 7d 08             	mov    0x8(%ebp),%edi
458e7b:	6a ff                	push   $0xffffffff
458e7d:	ff 37                	push   (%edi)
458e7f:	ff 15 6c f1 48 00    	call   *0x48f16c
458e85:	ff 77 04             	push   0x4(%edi)
458e88:	ff 77 08             	push   0x8(%edi)
458e8b:	ff 15 54 f7 48 00    	call   *0x48f754
458e91:	ff 77 08             	push   0x8(%edi)
458e94:	ff 15 5c f3 48 00    	call   *0x48f35c
458e9a:	ff 37                	push   (%edi)
458e9c:	ff 15 5c f3 48 00    	call   *0x48f35c
458ea2:	57                   	push   %edi
458ea3:	6a 00                	push   $0x0
458ea5:	ff 15 74 f1 48 00    	call   *0x48f174
458eab:	50                   	push   %eax
458eac:	ff 15 78 f1 48 00    	call   *0x48f178
458eb2:	33 c0                	xor    %eax,%eax
458eb4:	5f                   	pop    %edi
458eb5:	5d                   	pop    %ebp
458eb6:	c2 04 00             	ret    $0x4
458eb9:	55                   	push   %ebp
458eba:	8b ec                	mov    %esp,%ebp
458ebc:	56                   	push   %esi
458ebd:	8b f1                	mov    %ecx,%esi
458ebf:	e8 24 00 00 00       	call   0x458ee8
458ec4:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
458ec8:	74 04                	je     0x458ece
458eca:	84 c0                	test   %al,%al
458ecc:	eb 02                	jmp    0x458ed0
458ece:	3c 01                	cmp    $0x1,%al
458ed0:	75 0f                	jne    0x458ee1
458ed2:	6a ff                	push   $0xffffffff
458ed4:	6a ff                	push   $0xffffffff
458ed6:	6a 01                	push   $0x1
458ed8:	6a 00                	push   $0x0
458eda:	8b ce                	mov    %esi,%ecx
458edc:	e8 20 00 00 00       	call   0x458f01
458ee1:	b0 01                	mov    $0x1,%al
458ee3:	5e                   	pop    %esi
458ee4:	5d                   	pop    %ebp
458ee5:	c2 04 00             	ret    $0x4
458ee8:	6a 00                	push   $0x0
458eea:	6a 00                	push   $0x0
458eec:	68 f0 00 00 00       	push   $0xf0
458ef1:	ff 31                	push   (%ecx)
458ef3:	ff 15 88 f6 48 00    	call   *0x48f688
458ef9:	48                   	dec    %eax
458efa:	f7 d8                	neg    %eax
458efc:	1a c0                	sbb    %al,%al
458efe:	fe c0                	inc    %al
458f00:	c3                   	ret
458f01:	55                   	push   %ebp
458f02:	8b ec                	mov    %esp,%ebp
458f04:	83 ec 14             	sub    $0x14,%esp
458f07:	8d 45 ec             	lea    -0x14(%ebp),%eax
458f0a:	53                   	push   %ebx
458f0b:	56                   	push   %esi
458f0c:	57                   	push   %edi
458f0d:	8b d9                	mov    %ecx,%ebx
458f0f:	50                   	push   %eax
458f10:	ff 33                	push   (%ebx)
458f12:	ff 15 94 f6 48 00    	call   *0x48f694
458f18:	8b 75 10             	mov    0x10(%ebp),%esi
458f1b:	83 fe ff             	cmp    $0xffffffff,%esi
458f1e:	75 0d                	jne    0x458f2d
458f20:	8b 45 f4             	mov    -0xc(%ebp),%eax
458f23:	2b 45 ec             	sub    -0x14(%ebp),%eax
458f26:	99                   	cltd
458f27:	2b c2                	sub    %edx,%eax
458f29:	8b f0                	mov    %eax,%esi
458f2b:	d1 fe                	sar    $1,%esi
458f2d:	8b 45 14             	mov    0x14(%ebp),%eax
458f30:	83 f8 ff             	cmp    $0xffffffff,%eax
458f33:	75 0b                	jne    0x458f40
458f35:	8b 45 f8             	mov    -0x8(%ebp),%eax
458f38:	2b 45 f0             	sub    -0x10(%ebp),%eax
458f3b:	99                   	cltd
458f3c:	2b c2                	sub    %edx,%eax
458f3e:	d1 f8                	sar    $1,%eax
458f40:	0f b7 f8             	movzwl %ax,%edi
458f43:	0f b7 c6             	movzwl %si,%eax
458f46:	33 f6                	xor    %esi,%esi
458f48:	c1 e7 10             	shl    $0x10,%edi
458f4b:	46                   	inc    %esi
458f4c:	0b f8                	or     %eax,%edi
458f4e:	c7 45 14 01 02 00 00 	movl   $0x201,0x14(%ebp)
458f55:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
458f59:	c7 45 10 03 02 00 00 	movl   $0x203,0x10(%ebp)
458f60:	c7 45 fc 02 02 00 00 	movl   $0x202,-0x4(%ebp)
458f67:	75 12                	jne    0x458f7b
458f69:	c7 45 14 04 02 00 00 	movl   $0x204,0x14(%ebp)
458f70:	c7 45 fc 05 02 00 00 	movl   $0x205,-0x4(%ebp)
458f77:	6a 02                	push   $0x2
458f79:	eb 16                	jmp    0x458f91
458f7b:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
458f7f:	75 18                	jne    0x458f99
458f81:	c7 45 14 07 02 00 00 	movl   $0x207,0x14(%ebp)
458f88:	c7 45 fc 08 02 00 00 	movl   $0x208,-0x4(%ebp)
458f8f:	6a 10                	push   $0x10
458f91:	5e                   	pop    %esi
458f92:	c7 45 10 06 02 00 00 	movl   $0x206,0x10(%ebp)
458f99:	33 c9                	xor    %ecx,%ecx
458f9b:	41                   	inc    %ecx
458f9c:	89 4d 08             	mov    %ecx,0x8(%ebp)
458f9f:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
458fa2:	7c 48                	jl     0x458fec
458fa4:	8b c1                	mov    %ecx,%eax
458fa6:	99                   	cltd
458fa7:	2b c2                	sub    %edx,%eax
458fa9:	83 e0 fe             	and    $0xfffffffe,%eax
458fac:	57                   	push   %edi
458fad:	56                   	push   %esi
458fae:	3b c1                	cmp    %ecx,%eax
458fb0:	75 05                	jne    0x458fb7
458fb2:	ff 75 10             	push   0x10(%ebp)
458fb5:	eb 03                	jmp    0x458fba
458fb7:	ff 75 14             	push   0x14(%ebp)
458fba:	ff 33                	push   (%ebx)
458fbc:	ff 15 90 f6 48 00    	call   *0x48f690
458fc2:	6a 00                	push   $0x0
458fc4:	ff 15 7c f1 48 00    	call   *0x48f17c
458fca:	57                   	push   %edi
458fcb:	6a 00                	push   $0x0
458fcd:	ff 75 fc             	push   -0x4(%ebp)
458fd0:	ff 33                	push   (%ebx)
458fd2:	ff 15 90 f6 48 00    	call   *0x48f690
458fd8:	6a 00                	push   $0x0
458fda:	ff 15 7c f1 48 00    	call   *0x48f17c
458fe0:	8b 4d 08             	mov    0x8(%ebp),%ecx
458fe3:	41                   	inc    %ecx
458fe4:	89 4d 08             	mov    %ecx,0x8(%ebp)
458fe7:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
458fea:	7e b8                	jle    0x458fa4
458fec:	5f                   	pop    %edi
458fed:	5e                   	pop    %esi
458fee:	b0 01                	mov    $0x1,%al
458ff0:	5b                   	pop    %ebx
458ff1:	8b e5                	mov    %ebp,%esp
458ff3:	5d                   	pop    %ebp
458ff4:	c2 10 00             	ret    $0x10
458ff7:	55                   	push   %ebp
458ff8:	8b ec                	mov    %esp,%ebp
458ffa:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
458ffe:	6a 00                	push   $0x0
459000:	74 17                	je     0x459019
459002:	6a 01                	push   $0x1
459004:	68 4f 01 00 00       	push   $0x14f
459009:	ff 31                	push   (%ecx)
45900b:	ff 15 88 f6 48 00    	call   *0x48f688
459011:	85 c0                	test   %eax,%eax
459013:	75 08                	jne    0x45901d
459015:	32 c0                	xor    %al,%al
459017:	eb 06                	jmp    0x45901f
459019:	6a 00                	push   $0x0
45901b:	eb e7                	jmp    0x459004
45901d:	b0 01                	mov    $0x1,%al
45901f:	5d                   	pop    %ebp
459020:	c2 04 00             	ret    $0x4
459023:	55                   	push   %ebp
459024:	8b ec                	mov    %esp,%ebp
459026:	83 ec 10             	sub    $0x10,%esp
459029:	53                   	push   %ebx
45902a:	8b 1d 88 f6 48 00    	mov    0x48f688,%ebx
459030:	8d 45 f0             	lea    -0x10(%ebp),%eax
459033:	56                   	push   %esi
459034:	57                   	push   %edi
459035:	50                   	push   %eax
459036:	8d 45 fc             	lea    -0x4(%ebp),%eax
459039:	8b f9                	mov    %ecx,%edi
45903b:	50                   	push   %eax
45903c:	68 b0 00 00 00       	push   $0xb0
459041:	ff 37                	push   (%edi)
459043:	ff d3                	call   *%ebx
459045:	8b 75 fc             	mov    -0x4(%ebp),%esi
459048:	6a 00                	push   $0x0
45904a:	56                   	push   %esi
45904b:	68 c9 00 00 00       	push   $0xc9
459050:	ff 37                	push   (%edi)
459052:	89 75 f4             	mov    %esi,-0xc(%ebp)
459055:	ff d3                	call   *%ebx
459057:	89 45 f8             	mov    %eax,-0x8(%ebp)
45905a:	83 f8 01             	cmp    $0x1,%eax
45905d:	7c 3a                	jl     0x459099
45905f:	6a 00                	push   $0x0
459061:	ff 75 fc             	push   -0x4(%ebp)
459064:	68 c9 00 00 00       	push   $0xc9
459069:	ff 37                	push   (%edi)
45906b:	ff d3                	call   *%ebx
45906d:	39 45 f8             	cmp    %eax,-0x8(%ebp)
459070:	75 1d                	jne    0x45908f
459072:	8b 75 f8             	mov    -0x8(%ebp),%esi
459075:	8b 45 fc             	mov    -0x4(%ebp),%eax
459078:	6a 00                	push   $0x0
45907a:	48                   	dec    %eax
45907b:	50                   	push   %eax
45907c:	68 c9 00 00 00       	push   $0xc9
459081:	ff 37                	push   (%edi)
459083:	89 45 fc             	mov    %eax,-0x4(%ebp)
459086:	ff d3                	call   *%ebx
459088:	3b f0                	cmp    %eax,%esi
45908a:	74 e9                	je     0x459075
45908c:	8b 75 f4             	mov    -0xc(%ebp),%esi
45908f:	8b 45 08             	mov    0x8(%ebp),%eax
459092:	2b 75 fc             	sub    -0x4(%ebp),%esi
459095:	89 30                	mov    %esi,(%eax)
459097:	eb 09                	jmp    0x4590a2
459099:	8b 4d 08             	mov    0x8(%ebp),%ecx
45909c:	8b 55 fc             	mov    -0x4(%ebp),%edx
45909f:	42                   	inc    %edx
4590a0:	89 11                	mov    %edx,(%ecx)
4590a2:	5f                   	pop    %edi
4590a3:	5e                   	pop    %esi
4590a4:	b0 01                	mov    $0x1,%al
4590a6:	5b                   	pop    %ebx
4590a7:	8b e5                	mov    %ebp,%esp
4590a9:	5d                   	pop    %ebp
4590aa:	c2 04 00             	ret    $0x4
4590ad:	55                   	push   %ebp
4590ae:	8b ec                	mov    %esp,%ebp
4590b0:	51                   	push   %ecx
4590b1:	51                   	push   %ecx
4590b2:	53                   	push   %ebx
4590b3:	56                   	push   %esi
4590b4:	57                   	push   %edi
4590b5:	68 00 00 01 00       	push   $0x10000
4590ba:	8b f1                	mov    %ecx,%esi
4590bc:	e8 35 7f fc ff       	call   0x420ff6
4590c1:	59                   	pop    %ecx
4590c2:	50                   	push   %eax
4590c3:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4590c6:	e8 c3 c2 fa ff       	call   0x40538e
4590cb:	8b 7d f8             	mov    -0x8(%ebp),%edi
4590ce:	8b 45 08             	mov    0x8(%ebp),%eax
4590d1:	57                   	push   %edi
4590d2:	48                   	dec    %eax
4590d3:	50                   	push   %eax
4590d4:	68 c4 00 00 00       	push   $0xc4
4590d9:	c7 07 ff 7f 00 00    	movl   $0x7fff,(%edi)
4590df:	ff 36                	push   (%esi)
4590e1:	ff 15 88 f6 48 00    	call   *0x48f688
4590e7:	85 c0                	test   %eax,%eax
4590e9:	74 13                	je     0x4590fe
4590eb:	33 c9                	xor    %ecx,%ecx
4590ed:	66 89 0c 47          	mov    %cx,(%edi,%eax,2)
4590f1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4590f4:	57                   	push   %edi
4590f5:	e8 32 ec fa ff       	call   0x407d2c
4590fa:	b3 01                	mov    $0x1,%bl
4590fc:	eb 0f                	jmp    0x45910d
4590fe:	8b 4d 0c             	mov    0xc(%ebp),%ecx
459101:	68 10 f9 48 00       	push   $0x48f910
459106:	e8 21 ec fa ff       	call   0x407d2c
45910b:	32 db                	xor    %bl,%bl
45910d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
459110:	ff 09                	decl   (%ecx)
459112:	75 0e                	jne    0x459122
459114:	51                   	push   %ecx
459115:	e8 52 7f fc ff       	call   0x42106c
45911a:	57                   	push   %edi
45911b:	e8 4c 7f fc ff       	call   0x42106c
459120:	59                   	pop    %ecx
459121:	59                   	pop    %ecx
459122:	5f                   	pop    %edi
459123:	5e                   	pop    %esi
459124:	8a c3                	mov    %bl,%al
459126:	5b                   	pop    %ebx
459127:	8b e5                	mov    %ebp,%esp
459129:	5d                   	pop    %ebp
45912a:	c2 08 00             	ret    $0x8
45912d:	55                   	push   %ebp
45912e:	8b ec                	mov    %esp,%ebp
459130:	83 ec 10             	sub    $0x10,%esp
459133:	56                   	push   %esi
459134:	57                   	push   %edi
459135:	8b 3d 88 f6 48 00    	mov    0x48f688,%edi
45913b:	8d 45 fc             	lea    -0x4(%ebp),%eax
45913e:	50                   	push   %eax
45913f:	8b f1                	mov    %ecx,%esi
459141:	8d 45 f8             	lea    -0x8(%ebp),%eax
459144:	50                   	push   %eax
459145:	68 b0 00 00 00       	push   $0xb0
45914a:	89 75 f0             	mov    %esi,-0x10(%ebp)
45914d:	ff 36                	push   (%esi)
45914f:	ff d7                	call   *%edi
459151:	8b 45 f8             	mov    -0x8(%ebp),%eax
459154:	3b 45 fc             	cmp    -0x4(%ebp),%eax
459157:	72 04                	jb     0x45915d
459159:	32 c0                	xor    %al,%al
45915b:	eb 7a                	jmp    0x4591d7
45915d:	53                   	push   %ebx
45915e:	33 db                	xor    %ebx,%ebx
459160:	53                   	push   %ebx
459161:	53                   	push   %ebx
459162:	6a 0e                	push   $0xe
459164:	ff 36                	push   (%esi)
459166:	ff d7                	call   *%edi
459168:	8b f8                	mov    %eax,%edi
45916a:	85 ff                	test   %edi,%edi
45916c:	74 66                	je     0x4591d4
45916e:	3b 7d f8             	cmp    -0x8(%ebp),%edi
459171:	72 61                	jb     0x4591d4
459173:	3b 7d fc             	cmp    -0x4(%ebp),%edi
459176:	72 5c                	jb     0x4591d4
459178:	33 c9                	xor    %ecx,%ecx
45917a:	8d 77 01             	lea    0x1(%edi),%esi
45917d:	6a 02                	push   $0x2