5d2ddd:	03 c8                	add    %eax,%ecx
5d2ddf:	8b 01                	mov    (%ecx),%eax
5d2de1:	ff 50 08             	call   *0x8(%eax)
5d2de4:	8b 4d 30             	mov    0x30(%ebp),%ecx
5d2de7:	51                   	push   %ecx
5d2de8:	8d 45 2c             	lea    0x2c(%ebp),%eax
5d2deb:	50                   	push   %eax
5d2dec:	e8 92 fe e3 ff       	call   0x412c83
5d2df1:	83 c4 08             	add    $0x8,%esp
5d2df4:	85 c0                	test   %eax,%eax
5d2df6:	74 0c                	je     0x5d2e04
5d2df8:	8b 08                	mov    (%eax),%ecx
5d2dfa:	8b 49 04             	mov    0x4(%ecx),%ecx
5d2dfd:	03 c8                	add    %eax,%ecx
5d2dff:	8b 01                	mov    (%ecx),%eax
5d2e01:	ff 50 0c             	call   *0xc(%eax)
5d2e04:	8b 4d d0             	mov    -0x30(%ebp),%ecx
5d2e07:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
5d2e0b:	c7 45 cc 04 76 be 00 	movl   $0xbe7604,-0x34(%ebp)
5d2e12:	85 c9                	test   %ecx,%ecx
5d2e14:	74 0c                	je     0x5d2e22
5d2e16:	8b 01                	mov    (%ecx),%eax
5d2e18:	8b 40 04             	mov    0x4(%eax),%eax
5d2e1b:	03 c8                	add    %eax,%ecx
5d2e1d:	8b 01                	mov    (%ecx),%eax
5d2e1f:	ff 50 0c             	call   *0xc(%eax)
5d2e22:	8d 4d cc             	lea    -0x34(%ebp),%ecx
5d2e25:	e8 c5 cb e6 ff       	call   0x43f9ef
5d2e2a:	83 7d 5c 00          	cmpl   $0x0,0x5c(%ebp)
5d2e2e:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5d2e32:	0f 84 a8 02 00 00    	je     0x5d30e0
5d2e38:	83 7d 60 08          	cmpl   $0x8,0x60(%ebp)
5d2e3c:	8d 4d 4c             	lea    0x4c(%ebp),%ecx
5d2e3f:	8b 45 5c             	mov    0x5c(%ebp),%eax
5d2e42:	0f 43 4d 4c          	cmovae 0x4c(%ebp),%ecx
5d2e46:	8d 04 41             	lea    (%ecx,%eax,2),%eax
5d2e49:	50                   	push   %eax
5d2e4a:	8d 4d 4c             	lea    0x4c(%ebp),%ecx
5d2e4d:	0f 43 4d 4c          	cmovae 0x4c(%ebp),%ecx
5d2e51:	8d 45 b8             	lea    -0x48(%ebp),%eax
5d2e54:	51                   	push   %ecx
5d2e55:	50                   	push   %eax
5d2e56:	8d 4d 4c             	lea    0x4c(%ebp),%ecx
5d2e59:	e8 f0 00 e4 ff       	call   0x412f4e
5d2e5e:	8b 7d 14             	mov    0x14(%ebp),%edi
5d2e61:	e9 7a 02 00 00       	jmp    0x5d30e0
5d2e66:	3b f7                	cmp    %edi,%esi
5d2e68:	0f 8d 7a 02 00 00    	jge    0x5d30e8
5d2e6e:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
5d2e72:	72 04                	jb     0x5d2e78
5d2e74:	8b 03                	mov    (%ebx),%eax
5d2e76:	eb 02                	jmp    0x5d2e7a
5d2e78:	8b c3                	mov    %ebx,%eax
5d2e7a:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
5d2e7e:	8d 4d 4c             	lea    0x4c(%ebp),%ecx
5d2e81:	50                   	push   %eax
5d2e82:	6a 01                	push   $0x1
5d2e84:	89 45 30             	mov    %eax,0x30(%ebp)
5d2e87:	46                   	inc    %esi
5d2e88:	e8 7e ce e5 ff       	call   0x42fd0b
5d2e8d:	8b 45 30             	mov    0x30(%ebp),%eax
5d2e90:	83 c0 d0             	add    $0xffffffd0,%eax
5d2e93:	66 83 f8 09          	cmp    $0x9,%ax
5d2e97:	0f 87 ea 01 00 00    	ja     0x5d3087
5d2e9d:	6a 20                	push   $0x20
5d2e9f:	e8 d9 7a e5 ff       	call   0x42a97d
5d2ea4:	83 c4 04             	add    $0x4,%esp
5d2ea7:	89 45 ec             	mov    %eax,-0x14(%ebp)
5d2eaa:	c6 45 fc 0d          	movb   $0xd,-0x4(%ebp)
5d2eae:	85 c0                	test   %eax,%eax
5d2eb0:	74 2b                	je     0x5d2edd
5d2eb2:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
5d2eb5:	8b 45 30             	mov    0x30(%ebp),%eax
5d2eb8:	6a 01                	push   $0x1
5d2eba:	0f b7 c0             	movzwl %ax,%eax
5d2ebd:	8b 51 04             	mov    0x4(%ecx),%edx
5d2ec0:	83 e8 30             	sub    $0x30,%eax
5d2ec3:	8a 49 0c             	mov    0xc(%ecx),%cl
5d2ec6:	50                   	push   %eax
5d2ec7:	88 4d f0             	mov    %cl,-0x10(%ebp)
5d2eca:	8b 4d ec             	mov    -0x14(%ebp),%ecx
5d2ecd:	52                   	push   %edx
5d2ece:	ff 75 f0             	push   -0x10(%ebp)
5d2ed1:	e8 96 91 e4 ff       	call   0x41c06c
5d2ed6:	8b c8                	mov    %eax,%ecx
5d2ed8:	89 45 30             	mov    %eax,0x30(%ebp)
5d2edb:	eb 05                	jmp    0x5d2ee2
5d2edd:	33 c9                	xor    %ecx,%ecx
5d2edf:	89 4d 30             	mov    %ecx,0x30(%ebp)
5d2ee2:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5d2ee6:	85 c9                	test   %ecx,%ecx
5d2ee8:	74 0f                	je     0x5d2ef9
5d2eea:	8b 01                	mov    (%ecx),%eax
5d2eec:	8b 40 04             	mov    0x4(%eax),%eax
5d2eef:	03 c8                	add    %eax,%ecx
5d2ef1:	8b 01                	mov    (%ecx),%eax
5d2ef3:	ff 50 08             	call   *0x8(%eax)
5d2ef6:	8b 4d 30             	mov    0x30(%ebp),%ecx
5d2ef9:	51                   	push   %ecx
5d2efa:	8d 45 2c             	lea    0x2c(%ebp),%eax
5d2efd:	50                   	push   %eax
5d2efe:	e8 80 fd e3 ff       	call   0x412c83
5d2f03:	83 c4 08             	add    $0x8,%esp
5d2f06:	85 c0                	test   %eax,%eax
5d2f08:	74 0c                	je     0x5d2f16
5d2f0a:	8b 08                	mov    (%eax),%ecx
5d2f0c:	8b 49 04             	mov    0x4(%ecx),%ecx
5d2f0f:	03 c8                	add    %eax,%ecx
5d2f11:	8b 01                	mov    (%ecx),%eax
5d2f13:	ff 50 0c             	call   *0xc(%eax)
5d2f16:	3b f7                	cmp    %edi,%esi
5d2f18:	0f 8d ca 01 00 00    	jge    0x5d30e8
5d2f1e:	66 90                	xchg   %ax,%ax
5d2f20:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
5d2f24:	72 04                	jb     0x5d2f2a
5d2f26:	8b 03                	mov    (%ebx),%eax
5d2f28:	eb 02                	jmp    0x5d2f2c
5d2f2a:	8b c3                	mov    %ebx,%eax
5d2f2c:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
5d2f30:	8d 4d 4c             	lea    0x4c(%ebp),%ecx
5d2f33:	50                   	push   %eax
5d2f34:	6a 01                	push   $0x1
5d2f36:	89 45 30             	mov    %eax,0x30(%ebp)
5d2f39:	46                   	inc    %esi
5d2f3a:	e8 cc cd e5 ff       	call   0x42fd0b
5d2f3f:	8b 4d 30             	mov    0x30(%ebp),%ecx
5d2f42:	8d 41 d0             	lea    -0x30(%ecx),%eax
5d2f45:	66 83 f8 09          	cmp    $0x9,%ax
5d2f49:	0f 87 a1 00 00 00    	ja     0x5d2ff0
5d2f4f:	6a 20                	push   $0x20
5d2f51:	e8 27 7a e5 ff       	call   0x42a97d
5d2f56:	83 c4 04             	add    $0x4,%esp
5d2f59:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5d2f5c:	c6 45 fc 0f          	movb   $0xf,-0x4(%ebp)
5d2f60:	85 c0                	test   %eax,%eax
5d2f62:	74 37                	je     0x5d2f9b
5d2f64:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
5d2f67:	6a 01                	push   $0x1
5d2f69:	8a 41 0c             	mov    0xc(%ecx),%al
5d2f6c:	8b 51 08             	mov    0x8(%ecx),%edx
5d2f6f:	8b 79 04             	mov    0x4(%ecx),%edi
5d2f72:	88 45 e8             	mov    %al,-0x18(%ebp)
5d2f75:	8b 45 30             	mov    0x30(%ebp),%eax
5d2f78:	0f b7 c0             	movzwl %ax,%eax
5d2f7b:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
5d2f7e:	8d 04 48             	lea    (%eax,%ecx,2),%eax
5d2f81:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
5d2f84:	83 c0 d0             	add    $0xffffffd0,%eax
5d2f87:	50                   	push   %eax
5d2f88:	57                   	push   %edi
5d2f89:	ff 75 e8             	push   -0x18(%ebp)
5d2f8c:	e8 db 90 e4 ff       	call   0x41c06c
5d2f91:	8b 7d 14             	mov    0x14(%ebp),%edi
5d2f94:	8b c8                	mov    %eax,%ecx
5d2f96:	89 45 30             	mov    %eax,0x30(%ebp)
5d2f99:	eb 05                	jmp    0x5d2fa0
5d2f9b:	33 c9                	xor    %ecx,%ecx
5d2f9d:	89 4d 30             	mov    %ecx,0x30(%ebp)
5d2fa0:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5d2fa4:	85 c9                	test   %ecx,%ecx
5d2fa6:	74 0f                	je     0x5d2fb7
5d2fa8:	8b 01                	mov    (%ecx),%eax
5d2faa:	8b 40 04             	mov    0x4(%eax),%eax
5d2fad:	03 c8                	add    %eax,%ecx
5d2faf:	8b 01                	mov    (%ecx),%eax
5d2fb1:	ff 50 08             	call   *0x8(%eax)
5d2fb4:	8b 4d 30             	mov    0x30(%ebp),%ecx
5d2fb7:	51                   	push   %ecx
5d2fb8:	8d 45 2c             	lea    0x2c(%ebp),%eax
5d2fbb:	50                   	push   %eax
5d2fbc:	e8 c2 fc e3 ff       	call   0x412c83
5d2fc1:	8b c8                	mov    %eax,%ecx
5d2fc3:	83 c4 08             	add    $0x8,%esp
5d2fc6:	85 c9                	test   %ecx,%ecx
5d2fc8:	75 0d                	jne    0x5d2fd7
5d2fca:	3b f7                	cmp    %edi,%esi
5d2fcc:	0f 8c 4e ff ff ff    	jl     0x5d2f20
5d2fd2:	e9 11 01 00 00       	jmp    0x5d30e8
5d2fd7:	8b 01                	mov    (%ecx),%eax
5d2fd9:	8b 40 04             	mov    0x4(%eax),%eax
5d2fdc:	03 c8                	add    %eax,%ecx
5d2fde:	8b 01                	mov    (%ecx),%eax
5d2fe0:	ff 50 0c             	call   *0xc(%eax)
5d2fe3:	3b f7                	cmp    %edi,%esi
5d2fe5:	0f 8c 35 ff ff ff    	jl     0x5d2f20
5d2feb:	e9 f8 00 00 00       	jmp    0x5d30e8
5d2ff0:	ff 75 20             	push   0x20(%ebp)
5d2ff3:	8d 45 28             	lea    0x28(%ebp),%eax
5d2ff6:	ff 75 24             	push   0x24(%ebp)
5d2ff9:	ff 75 10             	push   0x10(%ebp)
5d2ffc:	50                   	push   %eax
5d2ffd:	8d 45 4c             	lea    0x4c(%ebp),%eax
5d3000:	50                   	push   %eax
5d3001:	56                   	push   %esi
5d3002:	53                   	push   %ebx
5d3003:	51                   	push   %ecx
5d3004:	e8 ca 7e e4 ff       	call   0x41aed3
5d3009:	8b f0                	mov    %eax,%esi
5d300b:	8d 45 18             	lea    0x18(%ebp),%eax
5d300e:	50                   	push   %eax
5d300f:	e8 fc f7 e2 ff       	call   0x402810
5d3014:	83 c4 24             	add    $0x24,%esp
5d3017:	8b 48 04             	mov    0x4(%eax),%ecx
5d301a:	c6 45 fc 10          	movb   $0x10,-0x4(%ebp)
5d301e:	89 4d 30             	mov    %ecx,0x30(%ebp)
5d3021:	85 c9                	test   %ecx,%ecx
5d3023:	74 0f                	je     0x5d3034
5d3025:	8b 01                	mov    (%ecx),%eax
5d3027:	8b 40 04             	mov    0x4(%eax),%eax
5d302a:	03 c8                	add    %eax,%ecx
5d302c:	8b 01                	mov    (%ecx),%eax
5d302e:	ff 50 08             	call   *0x8(%eax)
5d3031:	8b 4d 30             	mov    0x30(%ebp),%ecx
5d3034:	51                   	push   %ecx
5d3035:	8d 45 2c             	lea    0x2c(%ebp),%eax
5d3038:	50                   	push   %eax
5d3039:	e8 45 fc e3 ff       	call   0x412c83
5d303e:	83 c4 08             	add    $0x8,%esp
5d3041:	85 c0                	test   %eax,%eax
5d3043:	74 0c                	je     0x5d3051
5d3045:	8b 08                	mov    (%eax),%ecx
5d3047:	8b 49 04             	mov    0x4(%ecx),%ecx
5d304a:	03 c8                	add    %eax,%ecx
5d304c:	8b 01                	mov    (%ecx),%eax
5d304e:	ff 50 0c             	call   *0xc(%eax)
5d3051:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
5d3054:	c6 45 fc 11          	movb   $0x11,-0x4(%ebp)
5d3058:	c7 45 18 04 76 be 00 	movl   $0xbe7604,0x18(%ebp)
5d305f:	85 c9                	test   %ecx,%ecx
5d3061:	74 0c                	je     0x5d306f
5d3063:	8b 01                	mov    (%ecx),%eax
5d3065:	8b 40 04             	mov    0x4(%eax),%eax
5d3068:	03 c8                	add    %eax,%ecx
5d306a:	8b 01                	mov    (%ecx),%eax
5d306c:	ff 50 0c             	call   *0xc(%eax)
5d306f:	8d 4d 18             	lea    0x18(%ebp),%ecx
5d3072:	e8 78 c9 e6 ff       	call   0x43f9ef
5d3077:	83 7d 5c 00          	cmpl   $0x0,0x5c(%ebp)
5d307b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5d307f:	0f 85 d6 fc ff ff    	jne    0x5d2d5b
5d3085:	eb 59                	jmp    0x5d30e0
5d3087:	6a 26                	push   $0x26
5d3089:	33 c0                	xor    %eax,%eax
5d308b:	c7 45 48 07 00 00 00 	movl   $0x7,0x48(%ebp)
5d3092:	68 18 76 be 00       	push   $0xbe7618
5d3097:	8d 4d 34             	lea    0x34(%ebp),%ecx
5d309a:	c7 45 44 00 00 00 00 	movl   $0x0,0x44(%ebp)
5d30a1:	66 89 45 34          	mov    %ax,0x34(%ebp)
5d30a5:	e8 0d 81 e4 ff       	call   0x41b1b7
5d30aa:	8d 45 34             	lea    0x34(%ebp),%eax
5d30ad:	c6 45 fc 0e          	movb   $0xe,-0x4(%ebp)
5d30b1:	50                   	push   %eax
5d30b2:	e8 c8 7b e5 ff       	call   0x42ac7f
5d30b7:	8b 45 48             	mov    0x48(%ebp),%eax
5d30ba:	83 c4 04             	add    $0x4,%esp
5d30bd:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5d30c1:	83 f8 08             	cmp    $0x8,%eax
5d30c4:	72 1a                	jb     0x5d30e0
5d30c6:	40                   	inc    %eax
5d30c7:	8d 4d 34             	lea    0x34(%ebp),%ecx
5d30ca:	50                   	push   %eax
5d30cb:	ff 75 34             	push   0x34(%ebp)
5d30ce:	e8 74 eb e4 ff       	call   0x421c47
5d30d3:	eb 0b                	jmp    0x5d30e0
5d30d5:	50                   	push   %eax
5d30d6:	6a 01                	push   $0x1
5d30d8:	8d 4d 4c             	lea    0x4c(%ebp),%ecx
5d30db:	e8 2b cc e5 ff       	call   0x42fd0b
5d30e0:	3b f7                	cmp    %edi,%esi
5d30e2:	0f 8c c8 f8 ff ff    	jl     0x5d29b0
5d30e8:	83 7d 5c 00          	cmpl   $0x0,0x5c(%ebp)
5d30ec:	0f 84 8a 00 00 00    	je     0x5d317c
5d30f2:	8d 45 4c             	lea    0x4c(%ebp),%eax
5d30f5:	50                   	push   %eax
5d30f6:	8d 45 18             	lea    0x18(%ebp),%eax
5d30f9:	50                   	push   %eax
5d30fa:	e8 1f 9b e5 ff       	call   0x42cc1e
5d30ff:	83 c4 08             	add    $0x8,%esp
5d3102:	8b 4d 24             	mov    0x24(%ebp),%ecx
5d3105:	50                   	push   %eax
5d3106:	c6 45 fc 12          	movb   $0x12,-0x4(%ebp)
5d310a:	e8 56 51 e3 ff       	call   0x408265
5d310f:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
5d3112:	c6 45 fc 13          	movb   $0x13,-0x4(%ebp)
5d3116:	c7 45 18 60 1f be 00 	movl   $0xbe1f60,0x18(%ebp)
5d311d:	85 c9                	test   %ecx,%ecx
5d311f:	74 10                	je     0x5d3131
5d3121:	8b 41 04             	mov    0x4(%ecx),%eax
5d3124:	83 c1 04             	add    $0x4,%ecx
5d3127:	8b 40 04             	mov    0x4(%eax),%eax
5d312a:	03 c8                	add    %eax,%ecx
5d312c:	8b 01                	mov    (%ecx),%eax
5d312e:	ff 50 0c             	call   *0xc(%eax)
5d3131:	8d 4d 18             	lea    0x18(%ebp),%ecx
5d3134:	e8 b6 c8 e6 ff       	call   0x43f9ef
5d3139:	8d 45 18             	lea    0x18(%ebp),%eax
5d313c:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5d3140:	50                   	push   %eax
5d3141:	e8 ca f6 e2 ff       	call   0x402810
5d3146:	83 c4 04             	add    $0x4,%esp
5d3149:	8b 4d 20             	mov    0x20(%ebp),%ecx
5d314c:	50                   	push   %eax
5d314d:	c6 45 fc 14          	movb   $0x14,-0x4(%ebp)
5d3151:	e8 48 ab e6 ff       	call   0x43dc9e
5d3156:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
5d3159:	c6 45 fc 15          	movb   $0x15,-0x4(%ebp)
5d315d:	c7 45 18 04 76 be 00 	movl   $0xbe7604,0x18(%ebp)
5d3164:	85 c9                	test   %ecx,%ecx
5d3166:	74 0c                	je     0x5d3174
5d3168:	8b 01                	mov    (%ecx),%eax
5d316a:	8b 40 04             	mov    0x4(%eax),%eax
5d316d:	03 c8                	add    %eax,%ecx
5d316f:	8b 01                	mov    (%ecx),%eax
5d3171:	ff 50 0c             	call   *0xc(%eax)
5d3174:	8d 4d 18             	lea    0x18(%ebp),%ecx
5d3177:	e8 73 c8 e6 ff       	call   0x43f9ef
5d317c:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
5d317f:	c6 45 fc 16          	movb   $0x16,-0x4(%ebp)
5d3183:	c7 45 28 04 76 be 00 	movl   $0xbe7604,0x28(%ebp)
5d318a:	85 c9                	test   %ecx,%ecx
5d318c:	74 0c                	je     0x5d319a
5d318e:	8b 01                	mov    (%ecx),%eax
5d3190:	8b 40 04             	mov    0x4(%eax),%eax
5d3193:	03 c8                	add    %eax,%ecx
5d3195:	8b 01                	mov    (%ecx),%eax
5d3197:	ff 50 0c             	call   *0xc(%eax)
5d319a:	8d 4d 28             	lea    0x28(%ebp),%ecx
5d319d:	e8 4d c8 e6 ff       	call   0x43f9ef
5d31a2:	8b 45 60             	mov    0x60(%ebp),%eax
5d31a5:	83 f8 08             	cmp    $0x8,%eax
5d31a8:	72 0d                	jb     0x5d31b7
5d31aa:	40                   	inc    %eax
5d31ab:	8d 4d 4c             	lea    0x4c(%ebp),%ecx
5d31ae:	50                   	push   %eax
5d31af:	ff 75 4c             	push   0x4c(%ebp)
5d31b2:	e8 90 ea e4 ff       	call   0x421c47
5d31b7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5d31ba:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5d31c1:	59                   	pop    %ecx
5d31c2:	5f                   	pop    %edi
5d31c3:	5e                   	pop    %esi
5d31c4:	5b                   	pop    %ebx
5d31c5:	8b 4d 64             	mov    0x64(%ebp),%ecx
5d31c8:	33 cd                	xor    %ebp,%ecx
5d31ca:	e8 e7 85 e4 ff       	call   0x41b7b6
5d31cf:	8d 65 68             	lea    0x68(%ebp),%esp
5d31d2:	5d                   	pop    %ebp
5d31d3:	c3                   	ret
5d31d4:	cc                   	int3
5d31d5:	cc                   	int3