4fbd25:	56                   	push   %esi
4fbd26:	57                   	push   %edi
4fbd27:	8b f9                	mov    %ecx,%edi
4fbd29:	8b f2                	mov    %edx,%esi
4fbd2b:	8b d8                	mov    %eax,%ebx
4fbd2d:	8b c3                	mov    %ebx,%eax
4fbd2f:	e8 9c 01 00 00       	call   0x4fbed0
4fbd34:	8b c8                	mov    %eax,%ecx
4fbd36:	8b d7                	mov    %edi,%edx
4fbd38:	8b c6                	mov    %esi,%eax
4fbd3a:	e8 e5 cb f2 ff       	call   0x428924
4fbd3f:	5f                   	pop    %edi
4fbd40:	5e                   	pop    %esi
4fbd41:	5b                   	pop    %ebx
4fbd42:	c3                   	ret
4fbd43:	90                   	nop
4fbd44:	53                   	push   %ebx
4fbd45:	56                   	push   %esi
4fbd46:	57                   	push   %edi
4fbd47:	8b f2                	mov    %edx,%esi
4fbd49:	8b f8                	mov    %eax,%edi
4fbd4b:	33 db                	xor    %ebx,%ebx
4fbd4d:	8b c6                	mov    %esi,%eax
4fbd4f:	8b 15 b4 b1 4f 00    	mov    0x4fb1b4,%edx
4fbd55:	e8 aa 7e f0 ff       	call   0x403c04
4fbd5a:	84 c0                	test   %al,%al
4fbd5c:	74 25                	je     0x4fbd83
4fbd5e:	8b 47 28             	mov    0x28(%edi),%eax
4fbd61:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4fbd65:	74 16                	je     0x4fbd7d
4fbd67:	8b 56 28             	mov    0x28(%esi),%edx
4fbd6a:	83 7a 08 00          	cmpl   $0x0,0x8(%edx)
4fbd6e:	74 0d                	je     0x4fbd7d
4fbd70:	8b d6                	mov    %esi,%edx
4fbd72:	8b c7                	mov    %edi,%eax
4fbd74:	e8 b3 e5 f2 ff       	call   0x42a32c
4fbd79:	8b d8                	mov    %eax,%ebx
4fbd7b:	eb 06                	jmp    0x4fbd83
4fbd7d:	3b 46 28             	cmp    0x28(%esi),%eax
4fbd80:	0f 94 c3             	sete   %bl
4fbd83:	8b c3                	mov    %ebx,%eax
4fbd85:	5f                   	pop    %edi
4fbd86:	5e                   	pop    %esi
4fbd87:	5b                   	pop    %ebx
4fbd88:	c3                   	ret
4fbd89:	8d 40 00             	lea    0x0(%eax),%eax
4fbd8c:	53                   	push   %ebx
4fbd8d:	8b d8                	mov    %eax,%ebx
4fbd8f:	8b 43 2c             	mov    0x2c(%ebx),%eax
4fbd92:	e8 e1 7c f0 ff       	call   0x403a78
4fbd97:	33 c0                	xor    %eax,%eax
4fbd99:	89 43 2c             	mov    %eax,0x2c(%ebx)
4fbd9c:	5b                   	pop    %ebx
4fbd9d:	c3                   	ret
4fbd9e:	8b c0                	mov    %eax,%eax
4fbda0:	56                   	push   %esi
4fbda1:	57                   	push   %edi
4fbda2:	81 c4 fc fb ff ff    	add    $0xfffffbfc,%esp
4fbda8:	8b f8                	mov    %eax,%edi
4fbdaa:	66 c7 04 24 00 03    	movw   $0x300,(%esp)
4fbdb0:	66 8b 97 80 00 00 00 	mov    0x80(%edi),%dx
4fbdb7:	66 89 54 24 02       	mov    %dx,0x2(%esp)
4fbdbc:	83 7f 28 01          	cmpl   $0x1,0x28(%edi)
4fbdc0:	75 2f                	jne    0x4fbdf1
4fbdc2:	0f b7 f2             	movzwl %dx,%esi
4fbdc5:	4e                   	dec    %esi
4fbdc6:	85 f6                	test   %esi,%esi
4fbdc8:	7c 6c                	jl     0x4fbe36
4fbdca:	46                   	inc    %esi
4fbdcb:	33 c9                	xor    %ecx,%ecx
4fbdcd:	8d 54 24 04          	lea    0x4(%esp),%edx
4fbdd1:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
4fbdd7:	8b 00                	mov    (%eax),%eax
4fbdd9:	8a 04 08             	mov    (%eax,%ecx,1),%al
4fbddc:	88 02                	mov    %al,(%edx)
4fbdde:	88 42 01             	mov    %al,0x1(%edx)
4fbde1:	88 42 02             	mov    %al,0x2(%edx)
4fbde4:	c6 42 03 00          	movb   $0x0,0x3(%edx)
4fbde8:	41                   	inc    %ecx
4fbde9:	83 c2 04             	add    $0x4,%edx
4fbdec:	4e                   	dec    %esi
4fbded:	75 e2                	jne    0x4fbdd1
4fbdef:	eb 45                	jmp    0x4fbe36
4fbdf1:	0f b7 f2             	movzwl %dx,%esi
4fbdf4:	4e                   	dec    %esi
4fbdf5:	85 f6                	test   %esi,%esi
4fbdf7:	7c 3d                	jl     0x4fbe36
4fbdf9:	46                   	inc    %esi
4fbdfa:	33 c9                	xor    %ecx,%ecx
4fbdfc:	8d 54 24 04          	lea    0x4(%esp),%edx
4fbe00:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
4fbe06:	8b 40 08             	mov    0x8(%eax),%eax
4fbe09:	8a 04 08             	mov    (%eax,%ecx,1),%al
4fbe0c:	88 02                	mov    %al,(%edx)
4fbe0e:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
4fbe14:	8b 40 04             	mov    0x4(%eax),%eax
4fbe17:	8a 04 08             	mov    (%eax,%ecx,1),%al
4fbe1a:	88 42 01             	mov    %al,0x1(%edx)
4fbe1d:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
4fbe23:	8b 00                	mov    (%eax),%eax
4fbe25:	8a 04 08             	mov    (%eax,%ecx,1),%al
4fbe28:	88 42 02             	mov    %al,0x2(%edx)
4fbe2b:	c6 42 03 00          	movb   $0x0,0x3(%edx)
4fbe2f:	41                   	inc    %ecx
4fbe30:	83 c2 04             	add    $0x4,%edx
4fbe33:	4e                   	dec    %esi
4fbe34:	75 ca                	jne    0x4fbe00
4fbe36:	8b c4                	mov    %esp,%eax
4fbe38:	50                   	push   %eax
4fbe39:	e8 7a b6 f0 ff       	call   0x4074b8
4fbe3e:	81 c4 04 04 00 00    	add    $0x404,%esp
4fbe44:	5f                   	pop    %edi
4fbe45:	5e                   	pop    %esi
4fbe46:	c3                   	ret
4fbe47:	90                   	nop
4fbe48:	53                   	push   %ebx
4fbe49:	56                   	push   %esi
4fbe4a:	57                   	push   %edi
4fbe4b:	55                   	push   %ebp
4fbe4c:	81 c4 fc fb ff ff    	add    $0xfffffbfc,%esp
4fbe52:	8b d8                	mov    %eax,%ebx
4fbe54:	8d 44 24 04          	lea    0x4(%esp),%eax
4fbe58:	50                   	push   %eax
4fbe59:	68 00 01 00 00       	push   $0x100
4fbe5e:	6a 00                	push   $0x0
4fbe60:	52                   	push   %edx
4fbe61:	e8 92 b7 f0 ff       	call   0x4075f8
4fbe66:	8b f0                	mov    %eax,%esi
4fbe68:	85 f6                	test   %esi,%esi
4fbe6a:	74 59                	je     0x4fbec5
4fbe6c:	6a 03                	push   $0x3
4fbe6e:	8b 7b 04             	mov    0x4(%ebx),%edi
4fbe71:	8b c3                	mov    %ebx,%eax
4fbe73:	8b ce                	mov    %esi,%ecx
4fbe75:	ba 01 00 00 00       	mov    $0x1,%edx
4fbe7a:	ff 57 08             	call   *0x8(%edi)
4fbe7d:	89 83 84 00 00 00    	mov    %eax,0x84(%ebx)
4fbe83:	89 b3 80 00 00 00    	mov    %esi,0x80(%ebx)
4fbe89:	8b fe                	mov    %esi,%edi
4fbe8b:	4f                   	dec    %edi
4fbe8c:	85 ff                	test   %edi,%edi
4fbe8e:	7c 35                	jl     0x4fbec5
4fbe90:	47                   	inc    %edi
4fbe91:	33 d2                	xor    %edx,%edx
4fbe93:	8d 44 24 04          	lea    0x4(%esp),%eax
4fbe97:	8b b3 84 00 00 00    	mov    0x84(%ebx),%esi
4fbe9d:	8b 4e 08             	mov    0x8(%esi),%ecx
4fbea0:	8d 2c 11             	lea    (%ecx,%edx,1),%ebp
4fbea3:	8a 08                	mov    (%eax),%cl
4fbea5:	88 4d 00             	mov    %cl,0x0(%ebp)
4fbea8:	8b 4e 04             	mov    0x4(%esi),%ecx
4fbeab:	8d 2c 11             	lea    (%ecx,%edx,1),%ebp
4fbeae:	8a 48 01             	mov    0x1(%eax),%cl
4fbeb1:	88 4d 00             	mov    %cl,0x0(%ebp)
4fbeb4:	8b 0e                	mov    (%esi),%ecx
4fbeb6:	8d 34 11             	lea    (%ecx,%edx,1),%esi
4fbeb9:	8a 48 02             	mov    0x2(%eax),%cl
4fbebc:	88 0e                	mov    %cl,(%esi)
4fbebe:	42                   	inc    %edx
4fbebf:	83 c0 04             	add    $0x4,%eax
4fbec2:	4f                   	dec    %edi
4fbec3:	75 d2                	jne    0x4fbe97
4fbec5:	81 c4 04 04 00 00    	add    $0x404,%esp
4fbecb:	5d                   	pop    %ebp
4fbecc:	5f                   	pop    %edi
4fbecd:	5e                   	pop    %esi
4fbece:	5b                   	pop    %ebx
4fbecf:	c3                   	ret
4fbed0:	55                   	push   %ebp
4fbed1:	8b ec                	mov    %esp,%ebp
4fbed3:	81 c4 70 fd ff ff    	add    $0xfffffd70,%esp
4fbed9:	53                   	push   %ebx
4fbeda:	56                   	push   %esi
4fbedb:	57                   	push   %edi
4fbedc:	89 45 fc             	mov    %eax,-0x4(%ebp)
4fbedf:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbee2:	8b 40 2c             	mov    0x2c(%eax),%eax
4fbee5:	89 45 f8             	mov    %eax,-0x8(%ebp)
4fbee8:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4fbeec:	0f 85 df 03 00 00    	jne    0x4fc2d1
4fbef2:	85 c0                	test   %eax,%eax
4fbef4:	75 12                	jne    0x4fbf08
4fbef6:	b2 01                	mov    $0x1,%dl
4fbef8:	a1 ec 6a 42 00       	mov    0x426aec,%eax
4fbefd:	e8 ce 12 f3 ff       	call   0x42d1d0
4fbf02:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fbf05:	89 42 2c             	mov    %eax,0x2c(%edx)
4fbf08:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbf0b:	8b 40 2c             	mov    0x2c(%eax),%eax
4fbf0e:	89 45 f8             	mov    %eax,-0x8(%ebp)
4fbf11:	c6 45 f3 01          	movb   $0x1,-0xd(%ebp)
4fbf15:	8d 95 80 fd ff ff    	lea    -0x280(%ebp),%edx
4fbf1b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbf1e:	e8 cd f7 ff ff       	call   0x4fb6f0
4fbf23:	33 d2                	xor    %edx,%edx
4fbf25:	55                   	push   %ebp
4fbf26:	68 ca c2 4f 00       	push   $0x4fc2ca
4fbf2b:	64 ff 32             	push   %fs:(%edx)
4fbf2e:	64 89 22             	mov    %esp,%fs:(%edx)
4fbf31:	33 d2                	xor    %edx,%edx
4fbf33:	55                   	push   %ebp
4fbf34:	68 9b c2 4f 00       	push   $0x4fc29b
4fbf39:	64 ff 32             	push   %fs:(%edx)
4fbf3c:	64 89 22             	mov    %esp,%fs:(%edx)
4fbf3f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbf42:	8b 40 2c             	mov    0x2c(%eax),%eax
4fbf45:	33 d2                	xor    %edx,%edx
4fbf47:	e8 b8 24 f3 ff       	call   0x42e404
4fbf4c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbf4f:	80 78 3e 01          	cmpb   $0x1,0x3e(%eax)
4fbf53:	74 09                	je     0x4fbf5e
4fbf55:	83 bd 50 fe ff ff 01 	cmpl   $0x1,-0x1b0(%ebp)
4fbf5c:	75 0f                	jne    0x4fbf6d
4fbf5e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbf61:	8b 40 2c             	mov    0x2c(%eax),%eax
4fbf64:	b2 03                	mov    $0x3,%dl
4fbf66:	e8 3d 28 f3 ff       	call   0x42e7a8
4fbf6b:	eb 0d                	jmp    0x4fbf7a
4fbf6d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbf70:	8b 40 2c             	mov    0x2c(%eax),%eax
4fbf73:	b2 06                	mov    $0x6,%dl
4fbf75:	e8 2e 28 f3 ff       	call   0x42e7a8
4fbf7a:	6a 00                	push   $0x0
4fbf7c:	6a 00                	push   $0x0
4fbf7e:	6a 00                	push   $0x0
4fbf80:	8d 85 70 fd ff ff    	lea    -0x290(%ebp),%eax
4fbf86:	50                   	push   %eax
4fbf87:	33 c9                	xor    %ecx,%ecx
4fbf89:	33 d2                	xor    %edx,%edx
4fbf8b:	33 c0                	xor    %eax,%eax
4fbf8d:	e8 e2 e6 f1 ff       	call   0x41a674
4fbf92:	8d 85 70 fd ff ff    	lea    -0x290(%ebp),%eax
4fbf98:	50                   	push   %eax
4fbf99:	6a 00                	push   $0x0
4fbf9b:	33 c9                	xor    %ecx,%ecx
4fbf9d:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fbfa0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbfa3:	66 be fd ff          	mov    $0xfffd,%si
4fbfa7:	e8 c8 7c f0 ff       	call   0x403c74
4fbfac:	33 d2                	xor    %edx,%edx
4fbfae:	55                   	push   %ebp
4fbfaf:	68 8a c2 4f 00       	push   $0x4fc28a
4fbfb4:	64 ff 32             	push   %fs:(%edx)
4fbfb7:	64 89 22             	mov    %esp,%fs:(%edx)
4fbfba:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbfbd:	8b 40 38             	mov    0x38(%eax),%eax
4fbfc0:	85 c0                	test   %eax,%eax
4fbfc2:	74 42                	je     0x4fc006
4fbfc4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fbfc7:	80 7a 3e 01          	cmpb   $0x1,0x3e(%edx)
4fbfcb:	75 2b                	jne    0x4fbff8
4fbfcd:	8b d0                	mov    %eax,%edx
4fbfcf:	8d 85 28 fe ff ff    	lea    -0x1d8(%ebp),%eax
4fbfd5:	e8 6e fe ff ff       	call   0x4fbe48
4fbfda:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbfdd:	8b 40 38             	mov    0x38(%eax),%eax
4fbfe0:	e8 7b 0f f3 ff       	call   0x42cf60
4fbfe5:	8b d0                	mov    %eax,%edx
4fbfe7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fbfea:	8b 40 2c             	mov    0x2c(%eax),%eax
4fbfed:	8b 08                	mov    (%eax),%ecx
4fbfef:	ff 51 38             	call   *0x38(%ecx)
4fbff2:	c6 45 f3 00          	movb   $0x0,-0xd(%ebp)
4fbff6:	eb 0e                	jmp    0x4fc006
4fbff8:	50                   	push   %eax
4fbff9:	e8 12 b5 f0 ff       	call   0x407510
4fbffe:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fc001:	33 d2                	xor    %edx,%edx
4fc003:	89 50 38             	mov    %edx,0x38(%eax)
4fc006:	8d 85 28 fe ff ff    	lea    -0x1d8(%ebp),%eax
4fc00c:	e8 9b 1f 00 00       	call   0x4fdfac
4fc011:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fc014:	8b 58 2c             	mov    0x2c(%eax),%ebx
4fc017:	33 d2                	xor    %edx,%edx
4fc019:	8b c3                	mov    %ebx,%eax
4fc01b:	e8 e4 23 f3 ff       	call   0x42e404
4fc020:	8b 95 94 fe ff ff    	mov    -0x16c(%ebp),%edx
4fc026:	8b c3                	mov    %ebx,%eax
4fc028:	8b 08                	mov    (%eax),%ecx
4fc02a:	ff 51 40             	call   *0x40(%ecx)
4fc02d:	8b 95 98 fe ff ff    	mov    -0x168(%ebp),%edx
4fc033:	8b c3                	mov    %ebx,%eax
4fc035:	8b 08                	mov    (%eax),%ecx
4fc037:	ff 51 34             	call   *0x34(%ecx)
4fc03a:	33 d2                	xor    %edx,%edx
4fc03c:	8b c3                	mov    %ebx,%eax
4fc03e:	e8 c5 18 f3 ff       	call   0x42d908
4fc043:	89 45 f4             	mov    %eax,-0xc(%ebp)
4fc046:	ba 01 00 00 00       	mov    $0x1,%edx
4fc04b:	8b c3                	mov    %ebx,%eax
4fc04d:	e8 b6 18 f3 ff       	call   0x42d908
4fc052:	8b f0                	mov    %eax,%esi
4fc054:	2b 75 f4             	sub    -0xc(%ebp),%esi
4fc057:	85 f6                	test   %esi,%esi
4fc059:	7e 10                	jle    0x4fc06b
4fc05b:	f7 c6 03 00 00 00    	test   $0x3,%esi
4fc061:	75 08                	jne    0x4fc06b
4fc063:	8b 9d a4 fe ff ff    	mov    -0x15c(%ebp),%ebx
4fc069:	eb 05                	jmp    0x4fc070
4fc06b:	bb 01 00 00 00       	mov    $0x1,%ebx
4fc070:	83 bd 64 fe ff ff 00 	cmpl   $0x0,-0x19c(%ebp)
4fc077:	0f 84 0a 01 00 00    	je     0x4fc187
4fc07d:	e9 9d 00 00 00       	jmp    0x4fc11f
4fc082:	8d 85 28 fe ff ff    	lea    -0x1d8(%ebp),%eax
4fc088:	8b 95 b4 fe ff ff    	mov    -0x14c(%ebp),%edx
4fc08e:	e8 dd 21 00 00       	call   0x4fe270
4fc093:	8b 85 30 fe ff ff    	mov    -0x1d0(%ebp),%eax
4fc099:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
4fc09d:	75 3d                	jne    0x4fc0dc
4fc09f:	83 bd ac fe ff ff 00 	cmpl   $0x0,-0x154(%ebp)
4fc0a6:	74 34                	je     0x4fc0dc
4fc0a8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fc0ab:	8b 40 2c             	mov    0x2c(%eax),%eax
4fc0ae:	e8 d1 17 f3 ff       	call   0x42d884
4fc0b3:	3c 03                	cmp    $0x3,%al
4fc0b5:	75 25                	jne    0x4fc0dc
4fc0b7:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
4fc0bb:	74 1f                	je     0x4fc0dc
4fc0bd:	8d 85 28 fe ff ff    	lea    -0x1d8(%ebp),%eax
4fc0c3:	e8 d8 fc ff ff       	call   0x4fbda0
4fc0c8:	8b d0                	mov    %eax,%edx
4fc0ca:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fc0cd:	8b 40 2c             	mov    0x2c(%eax),%eax
4fc0d0:	8b 08                	mov    (%eax),%ecx
4fc0d2:	ff 51 38             	call   *0x38(%ecx)
4fc0d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fc0d8:	c6 40 22 01          	movb   $0x1,0x22(%eax)
4fc0dc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fc0df:	8b 40 2c             	mov    0x2c(%eax),%eax
4fc0e2:	33 d2                	xor    %edx,%edx
4fc0e4:	e8 1f 18 f3 ff       	call   0x42d908
4fc0e9:	89 45 f4             	mov    %eax,-0xc(%ebp)
4fc0ec:	eb 18                	jmp    0x4fc106
4fc0ee:	8d 55 f4             	lea    -0xc(%ebp),%edx
4fc0f1:	8d 85 28 fe ff ff    	lea    -0x1d8(%ebp),%eax
4fc0f7:	8b cb                	mov    %ebx,%ecx
4fc0f9:	e8 36 20 00 00       	call   0x4fe134
4fc0fe:	8b d6                	mov    %esi,%edx
4fc100:	0f af d0             	imul   %eax,%edx
4fc103:	01 55 f4             	add    %edx,-0xc(%ebp)
4fc106:	8b 85 b0 fe ff ff    	mov    -0x150(%ebp),%eax
4fc10c:	3b 85 98 fe ff ff    	cmp    -0x168(%ebp),%eax
4fc112:	72 da                	jb     0x4fc0ee
4fc114:	8d 85 28 fe ff ff    	lea    -0x1d8(%ebp),%eax
4fc11a:	e8 b1 21 00 00       	call   0x4fe2d0
4fc11f:	8d 85 28 fe ff ff    	lea    -0x1d8(%ebp),%eax
4fc125:	e8 de 09 00 00       	call   0x4fcb08
4fc12a:	83 f8 02             	cmp    $0x2,%eax
4fc12d:	0f 85 4f ff ff ff    	jne    0x4fc082
4fc133:	8b 85 1c fe ff ff    	mov    -0x1e4(%ebp),%eax