48fd91:	85 d2                	test   %edx,%edx
48fd93:	75 46                	jne    0x48fddb
48fd95:	66 85 c0             	test   %ax,%ax
48fd98:	74 10                	je     0x48fdaa
48fd9a:	66 3b c6             	cmp    %si,%ax
48fd9d:	77 0b                	ja     0x48fdaa
48fd9f:	83 c1 02             	add    $0x2,%ecx
48fda2:	89 4d e0             	mov    %ecx,-0x20(%ebp)
48fda5:	0f b7 01             	movzwl (%ecx),%eax
48fda8:	eb eb                	jmp    0x48fd95
48fdaa:	f6 45 c4 01          	testb  $0x1,-0x3c(%ebp)
48fdae:	74 06                	je     0x48fdb6
48fdb0:	0f b7 45 c8          	movzwl -0x38(%ebp),%eax
48fdb4:	eb 03                	jmp    0x48fdb9
48fdb6:	6a 0a                	push   $0xa
48fdb8:	58                   	pop    %eax
48fdb9:	50                   	push   %eax
48fdba:	51                   	push   %ecx
48fdbb:	53                   	push   %ebx
48fdbc:	68 00 00 40 00       	push   $0x400000
48fdc1:	e8 f5 0f 00 00       	call   0x490dbb
48fdc6:	a3 d4 42 4a 00       	mov    %eax,0x4a42d4
48fdcb:	83 3d ec 42 4a 00 00 	cmpl   $0x0,0x4a42ec
48fdd2:	75 4f                	jne    0x48fe23
48fdd4:	50                   	push   %eax
48fdd5:	ff 15 74 80 4a 00    	call   *0x4a8074
48fddb:	83 f8 22             	cmp    $0x22,%eax
48fdde:	75 0c                	jne    0x48fdec
48fde0:	33 c0                	xor    %eax,%eax
48fde2:	85 d2                	test   %edx,%edx
48fde4:	0f 94 c0             	sete   %al
48fde7:	8b d0                	mov    %eax,%edx
48fde9:	89 55 e4             	mov    %edx,-0x1c(%ebp)
48fdec:	83 c1 02             	add    $0x2,%ecx
48fdef:	89 4d e0             	mov    %ecx,-0x20(%ebp)
48fdf2:	eb 90                	jmp    0x48fd84
48fdf4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
48fdf7:	8b 01                	mov    (%ecx),%eax
48fdf9:	8b 00                	mov    (%eax),%eax
48fdfb:	89 45 dc             	mov    %eax,-0x24(%ebp)
48fdfe:	51                   	push   %ecx
48fdff:	50                   	push   %eax
48fe00:	e8 19 08 00 00       	call   0x49061e
48fe05:	59                   	pop    %ecx
48fe06:	59                   	pop    %ecx
48fe07:	c3                   	ret
48fe08:	8b 65 e8             	mov    -0x18(%ebp),%esp
48fe0b:	8b 45 dc             	mov    -0x24(%ebp),%eax
48fe0e:	a3 d4 42 4a 00       	mov    %eax,0x4a42d4
48fe13:	83 3d ec 42 4a 00 00 	cmpl   $0x0,0x4a42ec
48fe1a:	75 07                	jne    0x48fe23
48fe1c:	50                   	push   %eax
48fe1d:	ff 15 10 80 4a 00    	call   *0x4a8010
48fe23:	83 3d d8 42 4a 00 00 	cmpl   $0x0,0x4a42d8
48fe2a:	75 0b                	jne    0x48fe37
48fe2c:	ff 15 0c 80 4a 00    	call   *0x4a800c
48fe32:	a1 d4 42 4a 00       	mov    0x4a42d4,%eax
48fe37:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
48fe3e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
48fe41:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
48fe48:	59                   	pop    %ecx
48fe49:	5f                   	pop    %edi
48fe4a:	5e                   	pop    %esi
48fe4b:	5b                   	pop    %ebx
48fe4c:	c9                   	leave
48fe4d:	c3                   	ret
48fe4e:	8b ff                	mov    %edi,%edi
48fe50:	55                   	push   %ebp
48fe51:	8b ec                	mov    %esp,%ebp
48fe53:	56                   	push   %esi
48fe54:	8b 75 08             	mov    0x8(%ebp),%esi
48fe57:	33 c0                	xor    %eax,%eax
48fe59:	3b 75 0c             	cmp    0xc(%ebp),%esi
48fe5c:	73 1e                	jae    0x48fe7c
48fe5e:	57                   	push   %edi
48fe5f:	85 c0                	test   %eax,%eax
48fe61:	75 18                	jne    0x48fe7b
48fe63:	8b 3e                	mov    (%esi),%edi
48fe65:	85 ff                	test   %edi,%edi
48fe67:	74 0a                	je     0x48fe73
48fe69:	8b cf                	mov    %edi,%ecx
48fe6b:	ff 15 2c 81 4a 00    	call   *0x4a812c
48fe71:	ff d7                	call   *%edi
48fe73:	83 c6 04             	add    $0x4,%esi
48fe76:	3b 75 0c             	cmp    0xc(%ebp),%esi
48fe79:	72 e4                	jb     0x48fe5f
48fe7b:	5f                   	pop    %edi
48fe7c:	5e                   	pop    %esi
48fe7d:	5d                   	pop    %ebp
48fe7e:	c3                   	ret
48fe7f:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
48fe84:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
48fe8b:	75 55                	jne    0x48fee2
48fe8d:	8b 0d 3c 00 40 00    	mov    0x40003c,%ecx
48fe93:	81 b9 00 00 40 00 50 	cmpl   $0x4550,0x400000(%ecx)
48fe9a:	45 00 00
48fe9d:	75 43                	jne    0x48fee2
48fe9f:	0f b7 81 18 00 40 00 	movzwl 0x400018(%ecx),%eax
48fea6:	ba 0b 01 00 00       	mov    $0x10b,%edx
48feab:	66 3b c2             	cmp    %dx,%ax
48feae:	74 1f                	je     0x48fecf
48feb0:	ba 0b 02 00 00       	mov    $0x20b,%edx
48feb5:	66 3b c2             	cmp    %dx,%ax
48feb8:	75 28                	jne    0x48fee2
48feba:	83 b9 84 00 40 00 0e 	cmpl   $0xe,0x400084(%ecx)
48fec1:	76 1f                	jbe    0x48fee2
48fec3:	33 c0                	xor    %eax,%eax
48fec5:	39 81 f8 00 40 00    	cmp    %eax,0x4000f8(%ecx)
48fecb:	0f 95 c0             	setne  %al
48fece:	c3                   	ret
48fecf:	83 b9 74 00 40 00 0e 	cmpl   $0xe,0x400074(%ecx)
48fed6:	76 0a                	jbe    0x48fee2
48fed8:	33 c0                	xor    %eax,%eax
48feda:	39 81 e8 00 40 00    	cmp    %eax,0x4000e8(%ecx)
48fee0:	eb e9                	jmp    0x48fecb
48fee2:	33 c0                	xor    %eax,%eax
48fee4:	c3                   	ret
48fee5:	cc                   	int3
48fee6:	cc                   	int3
48fee7:	cc                   	int3
48fee8:	cc                   	int3
48fee9:	cc                   	int3
48feea:	cc                   	int3
48feeb:	cc                   	int3
48feec:	cc                   	int3
48feed:	cc                   	int3
48feee:	cc                   	int3
48feef:	cc                   	int3
48fef0:	e8 30 09 00 00       	call   0x490825
48fef5:	e9 79 fd ff ff       	jmp    0x48fc73
48fefa:	ff 25 cc 7f 4a 00    	jmp    *0x4a7fcc
48ff00:	3b 0d dc 38 4a 00    	cmp    0x4a38dc,%ecx
48ff06:	75 03                	jne    0x48ff0b
48ff08:	c2 00 00             	ret    $0x0
48ff0b:	e9 2a 00 00 00       	jmp    0x48ff3a
48ff10:	8b ff                	mov    %edi,%edi
48ff12:	55                   	push   %ebp
48ff13:	8b ec                	mov    %esp,%ebp
48ff15:	6a 00                	push   $0x0
48ff17:	ff 15 b4 7e 4a 00    	call   *0x4a7eb4
48ff1d:	ff 75 08             	push   0x8(%ebp)
48ff20:	ff 15 b8 7e 4a 00    	call   *0x4a7eb8
48ff26:	68 09 04 00 c0       	push   $0xc0000409
48ff2b:	ff 15 e8 7e 4a 00    	call   *0x4a7ee8
48ff31:	50                   	push   %eax
48ff32:	ff 15 f0 7e 4a 00    	call   *0x4a7ef0
48ff38:	5d                   	pop    %ebp
48ff39:	c3                   	ret
48ff3a:	8b ff                	mov    %edi,%edi
48ff3c:	55                   	push   %ebp
48ff3d:	8b ec                	mov    %esp,%ebp
48ff3f:	81 ec 24 03 00 00    	sub    $0x324,%esp
48ff45:	a3 f8 43 4a 00       	mov    %eax,0x4a43f8
48ff4a:	89 0d f4 43 4a 00    	mov    %ecx,0x4a43f4
48ff50:	89 15 f0 43 4a 00    	mov    %edx,0x4a43f0
48ff56:	89 1d ec 43 4a 00    	mov    %ebx,0x4a43ec
48ff5c:	89 35 e8 43 4a 00    	mov    %esi,0x4a43e8
48ff62:	89 3d e4 43 4a 00    	mov    %edi,0x4a43e4
48ff68:	66 8c 15 10 44 4a 00 	data16 mov %ss,0x4a4410
48ff6f:	66 8c 0d 04 44 4a 00 	data16 mov %cs,0x4a4404
48ff76:	66 8c 1d e0 43 4a 00 	data16 mov %ds,0x4a43e0
48ff7d:	66 8c 05 dc 43 4a 00 	data16 mov %es,0x4a43dc
48ff84:	66 8c 25 d8 43 4a 00 	data16 mov %fs,0x4a43d8
48ff8b:	66 8c 2d d4 43 4a 00 	data16 mov %gs,0x4a43d4
48ff92:	9c                   	pushf
48ff93:	8f 05 08 44 4a 00    	pop    0x4a4408
48ff99:	8b 45 00             	mov    0x0(%ebp),%eax
48ff9c:	a3 fc 43 4a 00       	mov    %eax,0x4a43fc
48ffa1:	8b 45 04             	mov    0x4(%ebp),%eax
48ffa4:	a3 00 44 4a 00       	mov    %eax,0x4a4400
48ffa9:	8d 45 08             	lea    0x8(%ebp),%eax
48ffac:	a3 0c 44 4a 00       	mov    %eax,0x4a440c
48ffb1:	8b 85 dc fc ff ff    	mov    -0x324(%ebp),%eax
48ffb7:	c7 05 48 43 4a 00 01 	movl   $0x10001,0x4a4348
48ffbe:	00 01 00
48ffc1:	a1 00 44 4a 00       	mov    0x4a4400,%eax
48ffc6:	a3 04 43 4a 00       	mov    %eax,0x4a4304
48ffcb:	c7 05 f8 42 4a 00 09 	movl   $0xc0000409,0x4a42f8
48ffd2:	04 00 c0
48ffd5:	c7 05 fc 42 4a 00 01 	movl   $0x1,0x4a42fc
48ffdc:	00 00 00
48ffdf:	c7 05 08 43 4a 00 03 	movl   $0x3,0x4a4308
48ffe6:	00 00 00
48ffe9:	6a 04                	push   $0x4
48ffeb:	58                   	pop    %eax
48ffec:	6b c0 00             	imul   $0x0,%eax,%eax
48ffef:	c7 80 0c 43 4a 00 02 	movl   $0x2,0x4a430c(%eax)
48fff6:	00 00 00
48fff9:	6a 04                	push   $0x4
48fffb:	58                   	pop    %eax
48fffc:	c1 e0 00             	shl    $0x0,%eax
48ffff:	8b 0d dc 38 4a 00    	mov    0x4a38dc,%ecx
490005:	89 88 0c 43 4a 00    	mov    %ecx,0x4a430c(%eax)
49000b:	6a 04                	push   $0x4
49000d:	58                   	pop    %eax
49000e:	d1 e0                	shl    $1,%eax
490010:	8b 0d e0 38 4a 00    	mov    0x4a38e0,%ecx
490016:	89 88 0c 43 4a 00    	mov    %ecx,0x4a430c(%eax)
49001c:	6a 04                	push   $0x4
49001e:	58                   	pop    %eax
49001f:	6b c0 00             	imul   $0x0,%eax,%eax
490022:	8b 0d dc 38 4a 00    	mov    0x4a38dc,%ecx
490028:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
49002c:	6a 04                	push   $0x4
49002e:	58                   	pop    %eax
49002f:	c1 e0 00             	shl    $0x0,%eax
490032:	8b 0d e0 38 4a 00    	mov    0x4a38e0,%ecx
490038:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
49003c:	68 04 10 40 00       	push   $0x401004
490041:	e8 ca fe ff ff       	call   0x48ff10
490046:	c9                   	leave
490047:	c3                   	ret
490048:	6a 0c                	push   $0xc
49004a:	68 e0 e8 49 00       	push   $0x49e8e0
49004f:	e8 84 08 00 00       	call   0x4908d8
490054:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
490058:	8b 5d 0c             	mov    0xc(%ebp),%ebx
49005b:	8b c3                	mov    %ebx,%eax
49005d:	8b 7d 10             	mov    0x10(%ebp),%edi
490060:	0f af c7             	imul   %edi,%eax
490063:	8b 75 08             	mov    0x8(%ebp),%esi
490066:	03 f0                	add    %eax,%esi
490068:	89 75 08             	mov    %esi,0x8(%ebp)
49006b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
49006f:	83 ef 01             	sub    $0x1,%edi
490072:	89 7d 10             	mov    %edi,0x10(%ebp)
490075:	78 15                	js     0x49008c
490077:	2b f3                	sub    %ebx,%esi
490079:	89 75 08             	mov    %esi,0x8(%ebp)
49007c:	8b 4d 14             	mov    0x14(%ebp),%ecx
49007f:	ff 15 2c 81 4a 00    	call   *0x4a812c
490085:	8b ce                	mov    %esi,%ecx
490087:	ff 55 14             	call   *0x14(%ebp)
49008a:	eb e3                	jmp    0x49006f
49008c:	33 c0                	xor    %eax,%eax
49008e:	40                   	inc    %eax
49008f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
490092:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
490099:	e8 1e 00 00 00       	call   0x4900bc
49009e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4900a1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4900a8:	59                   	pop    %ecx
4900a9:	5f                   	pop    %edi
4900aa:	5e                   	pop    %esi
4900ab:	5b                   	pop    %ebx
4900ac:	c9                   	leave
4900ad:	c2 10 00             	ret    $0x10
4900b0:	8b 7d 10             	mov    0x10(%ebp),%edi
4900b3:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4900b6:	8b 75 08             	mov    0x8(%ebp),%esi
4900b9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4900bc:	85 c0                	test   %eax,%eax
4900be:	75 0b                	jne    0x4900cb
4900c0:	ff 75 14             	push   0x14(%ebp)
4900c3:	57                   	push   %edi
4900c4:	53                   	push   %ebx
4900c5:	56                   	push   %esi
4900c6:	e8 06 00 00 00       	call   0x4900d1
4900cb:	c3                   	ret
4900cc:	e9 77 ff ff ff       	jmp    0x490048
4900d1:	6a 14                	push   $0x14
4900d3:	68 c0 e8 49 00       	push   $0x49e8c0
4900d8:	e8 fb 07 00 00       	call   0x4908d8
4900dd:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4900e1:	83 6d 10 01          	subl   $0x1,0x10(%ebp)
4900e5:	78 46                	js     0x49012d
4900e7:	8b 75 08             	mov    0x8(%ebp),%esi
4900ea:	2b 75 0c             	sub    0xc(%ebp),%esi
4900ed:	89 75 08             	mov    %esi,0x8(%ebp)
4900f0:	8b 4d 14             	mov    0x14(%ebp),%ecx
4900f3:	ff 15 2c 81 4a 00    	call   *0x4a812c
4900f9:	8b ce                	mov    %esi,%ecx
4900fb:	ff 55 14             	call   *0x14(%ebp)
4900fe:	eb e1                	jmp    0x4900e1
490100:	8b 45 ec             	mov    -0x14(%ebp),%eax
490103:	89 45 e4             	mov    %eax,-0x1c(%ebp)
490106:	8b 45 e4             	mov    -0x1c(%ebp),%eax
490109:	8b 00                	mov    (%eax),%eax
49010b:	89 45 e0             	mov    %eax,-0x20(%ebp)
49010e:	8b 45 e0             	mov    -0x20(%ebp),%eax
490111:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
490117:	74 0b                	je     0x490124
490119:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
490120:	8b 45 dc             	mov    -0x24(%ebp),%eax
490123:	c3                   	ret
490124:	ff 15 f8 7f 4a 00    	call   *0x4a7ff8
49012a:	8b 65 e8             	mov    -0x18(%ebp),%esp
49012d:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
490134:	8b 4d f0             	mov    -0x10(%ebp),%ecx
490137:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49013e:	59                   	pop    %ecx
49013f:	5f                   	pop    %edi
490140:	5e                   	pop    %esi
490141:	5b                   	pop    %ebx
490142:	c9                   	leave
490143:	c2 10 00             	ret    $0x10
490146:	6a 14                	push   $0x14
490148:	68 00 e9 49 00       	push   $0x49e900
49014d:	e8 86 07 00 00       	call   0x4908d8
490152:	83 65 dc 00          	andl   $0x0,-0x24(%ebp)
490156:	a1 d0 66 4a 00       	mov    0x4a66d0,%eax
49015b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
49015e:	83 f8 ff             	cmp    $0xffffffff,%eax
490161:	75 16                	jne    0x490179
490163:	ff 75 08             	push   0x8(%ebp)
490166:	8b 35 e8 7f 4a 00    	mov    0x4a7fe8,%esi
49016c:	8b ce                	mov    %esi,%ecx
49016e:	ff 15 2c 81 4a 00    	call   *0x4a812c
490174:	ff d6                	call   *%esi
490176:	59                   	pop    %ecx
490177:	eb 54                	jmp    0x4901cd
490179:	6a 08                	push   $0x8
49017b:	e8 b1 07 00 00       	call   0x490931
490180:	59                   	pop    %ecx
490181:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
490185:	a1 d0 66 4a 00       	mov    0x4a66d0,%eax
49018a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
49018d:	a1 cc 66 4a 00       	mov    0x4a66cc,%eax
490192:	89 45 e0             	mov    %eax,-0x20(%ebp)
490195:	8d 45 e0             	lea    -0x20(%ebp),%eax
490198:	50                   	push   %eax
490199:	8d 45 e4             	lea    -0x1c(%ebp),%eax
49019c:	50                   	push   %eax
49019d:	ff 75 08             	push   0x8(%ebp)
4901a0:	e8 98 07 00 00       	call   0x49093d
4901a5:	83 c4 0c             	add    $0xc,%esp
4901a8:	8b f0                	mov    %eax,%esi
4901aa:	89 75 dc             	mov    %esi,-0x24(%ebp)
4901ad:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4901b0:	89 0d d0 66 4a 00    	mov    %ecx,0x4a66d0
4901b6:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4901b9:	89 0d cc 66 4a 00    	mov    %ecx,0x4a66cc
4901bf:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4901c6:	e8 15 00 00 00       	call   0x4901e0
4901cb:	8b c6                	mov    %esi,%eax
4901cd:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4901d0:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4901d7:	59                   	pop    %ecx
4901d8:	5f                   	pop    %edi
4901d9:	5e                   	pop    %esi
4901da:	5b                   	pop    %ebx
4901db:	c9                   	leave
4901dc:	c3                   	ret
4901dd:	8b 75 dc             	mov    -0x24(%ebp),%esi
4901e0:	6a 08                	push   $0x8
4901e2:	e8 50 07 00 00       	call   0x490937
4901e7:	59                   	pop    %ecx
4901e8:	c3                   	ret
4901e9:	8b ff                	mov    %edi,%edi
4901eb:	55                   	push   %ebp