504e16:	53                   	push   %ebx
504e17:	56                   	push   %esi
504e18:	57                   	push   %edi
504e19:	89 55 f8             	mov    %edx,-0x8(%ebp)
504e1c:	89 45 fc             	mov    %eax,-0x4(%ebp)
504e1f:	8b 45 08             	mov    0x8(%ebp),%eax
504e22:	8b 00                	mov    (%eax),%eax
504e24:	33 d2                	xor    %edx,%edx
504e26:	89 55 f4             	mov    %edx,-0xc(%ebp)
504e29:	89 45 f0             	mov    %eax,-0x10(%ebp)
504e2c:	8b c1                	mov    %ecx,%eax
504e2e:	eb 78                	jmp    0x504ea8
504e30:	8b 30                	mov    (%eax),%esi
504e32:	8b 55 f0             	mov    -0x10(%ebp),%edx
504e35:	8b 0a                	mov    (%edx),%ecx
504e37:	33 d2                	xor    %edx,%edx
504e39:	8a 16                	mov    (%esi),%dl
504e3b:	46                   	inc    %esi
504e3c:	88 11                	mov    %dl,(%ecx)
504e3e:	41                   	inc    %ecx
504e3f:	8d 14 52             	lea    (%edx,%edx,2),%edx
504e42:	33 db                	xor    %ebx,%ebx
504e44:	8a 1e                	mov    (%esi),%bl
504e46:	03 d3                	add    %ebx,%edx
504e48:	83 c2 02             	add    $0x2,%edx
504e4b:	c1 fa 02             	sar    $0x2,%edx
504e4e:	88 11                	mov    %dl,(%ecx)
504e50:	41                   	inc    %ecx
504e51:	8b 55 f8             	mov    -0x8(%ebp),%edx
504e54:	8b 7a 28             	mov    0x28(%edx),%edi
504e57:	83 ef 02             	sub    $0x2,%edi
504e5a:	85 ff                	test   %edi,%edi
504e5c:	76 2a                	jbe    0x504e88
504e5e:	33 d2                	xor    %edx,%edx
504e60:	33 db                	xor    %ebx,%ebx
504e62:	8a 16                	mov    (%esi),%dl
504e64:	46                   	inc    %esi
504e65:	4f                   	dec    %edi
504e66:	8a 5e fe             	mov    -0x2(%esi),%bl
504e69:	8d 14 52             	lea    (%edx,%edx,2),%edx
504e6c:	03 da                	add    %edx,%ebx
504e6e:	43                   	inc    %ebx
504e6f:	c1 fb 02             	sar    $0x2,%ebx
504e72:	88 19                	mov    %bl,(%ecx)
504e74:	33 db                	xor    %ebx,%ebx
504e76:	8a 1e                	mov    (%esi),%bl
504e78:	41                   	inc    %ecx
504e79:	03 d3                	add    %ebx,%edx
504e7b:	83 c2 02             	add    $0x2,%edx
504e7e:	c1 fa 02             	sar    $0x2,%edx
504e81:	88 11                	mov    %dl,(%ecx)
504e83:	41                   	inc    %ecx
504e84:	85 ff                	test   %edi,%edi
504e86:	77 d6                	ja     0x504e5e
504e88:	33 d2                	xor    %edx,%edx
504e8a:	8a 16                	mov    (%esi),%dl
504e8c:	0f b6 76 ff          	movzbl -0x1(%esi),%esi
504e90:	8d 1c 52             	lea    (%edx,%edx,2),%ebx
504e93:	03 de                	add    %esi,%ebx
504e95:	43                   	inc    %ebx
504e96:	c1 fb 02             	sar    $0x2,%ebx
504e99:	88 19                	mov    %bl,(%ecx)
504e9b:	41                   	inc    %ecx
504e9c:	88 11                	mov    %dl,(%ecx)
504e9e:	ff 45 f4             	incl   -0xc(%ebp)
504ea1:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
504ea5:	83 c0 04             	add    $0x4,%eax
504ea8:	8b 55 fc             	mov    -0x4(%ebp),%edx
504eab:	8b 8a 30 01 00 00    	mov    0x130(%edx),%ecx
504eb1:	3b 4d f4             	cmp    -0xc(%ebp),%ecx
504eb4:	0f 8f 76 ff ff ff    	jg     0x504e30
504eba:	5f                   	pop    %edi
504ebb:	5e                   	pop    %esi
504ebc:	5b                   	pop    %ebx
504ebd:	8b e5                	mov    %ebp,%esp
504ebf:	5d                   	pop    %ebp
504ec0:	c2 04 00             	ret    $0x4
504ec3:	90                   	nop
504ec4:	55                   	push   %ebp
504ec5:	8b ec                	mov    %esp,%ebp
504ec7:	83 c4 d4             	add    $0xffffffd4,%esp
504eca:	53                   	push   %ebx
504ecb:	56                   	push   %esi
504ecc:	57                   	push   %edi
504ecd:	89 45 fc             	mov    %eax,-0x4(%ebp)
504ed0:	8b 45 08             	mov    0x8(%ebp),%eax
504ed3:	8b 00                	mov    (%eax),%eax
504ed5:	89 45 f8             	mov    %eax,-0x8(%ebp)
504ed8:	33 c0                	xor    %eax,%eax
504eda:	89 45 e4             	mov    %eax,-0x1c(%ebp)
504edd:	8b d8                	mov    %eax,%ebx
504edf:	8d 04 99             	lea    (%ecx,%ebx,4),%eax
504ee2:	89 45 d4             	mov    %eax,-0x2c(%ebp)
504ee5:	e9 13 01 00 00       	jmp    0x504ffd
504eea:	33 c9                	xor    %ecx,%ecx
504eec:	89 4d e0             	mov    %ecx,-0x20(%ebp)
504eef:	8b 45 f8             	mov    -0x8(%ebp),%eax
504ef2:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
504ef5:	8d 04 88             	lea    (%eax,%ecx,4),%eax
504ef8:	89 45 d8             	mov    %eax,-0x28(%ebp)
504efb:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
504efe:	8b c1                	mov    %ecx,%eax
504f00:	89 45 dc             	mov    %eax,-0x24(%ebp)
504f03:	8b 4d dc             	mov    -0x24(%ebp),%ecx
504f06:	8b 01                	mov    (%ecx),%eax
504f08:	89 45 f4             	mov    %eax,-0xc(%ebp)
504f0b:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
504f0f:	75 0b                	jne    0x504f1c
504f11:	8b 4d dc             	mov    -0x24(%ebp),%ecx
504f14:	8b 41 fc             	mov    -0x4(%ecx),%eax
504f17:	89 45 f0             	mov    %eax,-0x10(%ebp)
504f1a:	eb 09                	jmp    0x504f25
504f1c:	8b 4d dc             	mov    -0x24(%ebp),%ecx
504f1f:	8b 41 04             	mov    0x4(%ecx),%eax
504f22:	89 45 f0             	mov    %eax,-0x10(%ebp)
504f25:	8b 4d d8             	mov    -0x28(%ebp),%ecx
504f28:	8b 09                	mov    (%ecx),%ecx
504f2a:	ff 45 e4             	incl   -0x1c(%ebp)
504f2d:	83 45 d8 04          	addl   $0x4,-0x28(%ebp)
504f31:	8b 45 f4             	mov    -0xc(%ebp),%eax
504f34:	0f b6 00             	movzbl (%eax),%eax
504f37:	8d 34 40             	lea    (%eax,%eax,2),%esi
504f3a:	8b 45 f0             	mov    -0x10(%ebp),%eax
504f3d:	0f b6 00             	movzbl (%eax),%eax
504f40:	ff 45 f0             	incl   -0x10(%ebp)
504f43:	ff 45 f4             	incl   -0xc(%ebp)
504f46:	03 f0                	add    %eax,%esi
504f48:	8b 45 f4             	mov    -0xc(%ebp),%eax
504f4b:	0f b6 00             	movzbl (%eax),%eax
504f4e:	8d 3c 40             	lea    (%eax,%eax,2),%edi
504f51:	8b 45 f0             	mov    -0x10(%ebp),%eax
504f54:	0f b6 00             	movzbl (%eax),%eax
504f57:	03 f8                	add    %eax,%edi
504f59:	8b c6                	mov    %esi,%eax
504f5b:	ff 45 f0             	incl   -0x10(%ebp)
504f5e:	ff 45 f4             	incl   -0xc(%ebp)
504f61:	c1 e0 02             	shl    $0x2,%eax
504f64:	83 c0 08             	add    $0x8,%eax
504f67:	c1 f8 04             	sar    $0x4,%eax
504f6a:	88 01                	mov    %al,(%ecx)
504f6c:	8d 04 76             	lea    (%esi,%esi,2),%eax
504f6f:	03 c7                	add    %edi,%eax
504f71:	41                   	inc    %ecx
504f72:	83 c0 07             	add    $0x7,%eax
504f75:	c1 f8 04             	sar    $0x4,%eax
504f78:	88 01                	mov    %al,(%ecx)
504f7a:	89 75 ec             	mov    %esi,-0x14(%ebp)
504f7d:	8b 42 28             	mov    0x28(%edx),%eax
504f80:	41                   	inc    %ecx
504f81:	83 e8 02             	sub    $0x2,%eax
504f84:	8b f7                	mov    %edi,%esi
504f86:	89 45 e8             	mov    %eax,-0x18(%ebp)
504f89:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
504f8d:	76 41                	jbe    0x504fd0
504f8f:	8b 45 f4             	mov    -0xc(%ebp),%eax
504f92:	0f b6 00             	movzbl (%eax),%eax
504f95:	8d 3c 40             	lea    (%eax,%eax,2),%edi
504f98:	8b 45 f0             	mov    -0x10(%ebp),%eax
504f9b:	0f b6 00             	movzbl (%eax),%eax
504f9e:	ff 45 f0             	incl   -0x10(%ebp)
504fa1:	03 f8                	add    %eax,%edi
504fa3:	ff 45 f4             	incl   -0xc(%ebp)
504fa6:	8d 04 76             	lea    (%esi,%esi,2),%eax
504fa9:	8b d8                	mov    %eax,%ebx
504fab:	03 c7                	add    %edi,%eax
504fad:	03 5d ec             	add    -0x14(%ebp),%ebx
504fb0:	83 c0 07             	add    $0x7,%eax
504fb3:	83 c3 08             	add    $0x8,%ebx
504fb6:	c1 fb 04             	sar    $0x4,%ebx
504fb9:	88 19                	mov    %bl,(%ecx)
504fbb:	41                   	inc    %ecx
504fbc:	c1 f8 04             	sar    $0x4,%eax
504fbf:	88 01                	mov    %al,(%ecx)
504fc1:	89 75 ec             	mov    %esi,-0x14(%ebp)
504fc4:	ff 4d e8             	decl   -0x18(%ebp)
504fc7:	41                   	inc    %ecx
504fc8:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
504fcc:	8b f7                	mov    %edi,%esi
504fce:	77 bf                	ja     0x504f8f
504fd0:	8d 04 76             	lea    (%esi,%esi,2),%eax
504fd3:	03 45 ec             	add    -0x14(%ebp),%eax
504fd6:	83 c0 08             	add    $0x8,%eax
504fd9:	c1 f8 04             	sar    $0x4,%eax
504fdc:	88 01                	mov    %al,(%ecx)
504fde:	8b c6                	mov    %esi,%eax
504fe0:	c1 e0 02             	shl    $0x2,%eax
504fe3:	41                   	inc    %ecx
504fe4:	83 c0 07             	add    $0x7,%eax
504fe7:	c1 f8 04             	sar    $0x4,%eax
504fea:	88 01                	mov    %al,(%ecx)
504fec:	ff 45 e0             	incl   -0x20(%ebp)
504fef:	83 7d e0 02          	cmpl   $0x2,-0x20(%ebp)
504ff3:	0f 8c 0a ff ff ff    	jl     0x504f03
504ff9:	83 45 d4 04          	addl   $0x4,-0x2c(%ebp)
504ffd:	8b 4d fc             	mov    -0x4(%ebp),%ecx
505000:	8b 81 30 01 00 00    	mov    0x130(%ecx),%eax
505006:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
505009:	0f 8f db fe ff ff    	jg     0x504eea
50500f:	5f                   	pop    %edi
505010:	5e                   	pop    %esi
505011:	5b                   	pop    %ebx
505012:	8b e5                	mov    %ebp,%esp
505014:	5d                   	pop    %ebp
505015:	c2 04 00             	ret    $0x4
505018:	53                   	push   %ebx
505019:	8b d8                	mov    %eax,%ebx
50501b:	8b c3                	mov    %ebx,%eax
50501d:	56                   	push   %esi
50501e:	57                   	push   %edi
50501f:	55                   	push   %ebp
505020:	8b 70 04             	mov    0x4(%eax),%esi
505023:	83 c4 e4             	add    $0xffffffe4,%esp
505026:	b9 a0 00 00 00       	mov    $0xa0,%ecx
50502b:	ba 01 00 00 00       	mov    $0x1,%edx
505030:	ff 16                	call   *(%esi)
505032:	89 04 24             	mov    %eax,(%esp)
505035:	8b 04 24             	mov    (%esp),%eax
505038:	89 83 bc 01 00 00    	mov    %eax,0x1bc(%ebx)
50503e:	8b 14 24             	mov    (%esp),%edx
505041:	c7 02 34 4b 50 00    	movl   $0x504b34,(%edx)
505047:	8b 0c 24             	mov    (%esp),%ecx
50504a:	c7 41 04 4c 4b 50 00 	movl   $0x504b4c,0x4(%ecx)
505051:	8b 04 24             	mov    (%esp),%eax
505054:	33 d2                	xor    %edx,%edx
505056:	89 50 08             	mov    %edx,0x8(%eax)
505059:	83 bb 28 01 00 00 00 	cmpl   $0x0,0x128(%ebx)
505060:	74 0f                	je     0x505071
505062:	8b 0b                	mov    (%ebx),%ecx
505064:	8b c3                	mov    %ebx,%eax
505066:	c7 41 14 17 00 00 00 	movl   $0x17,0x14(%ecx)
50506d:	8b 10                	mov    (%eax),%edx
50506f:	ff 12                	call   *(%edx)
505071:	83 7b 48 00          	cmpl   $0x0,0x48(%ebx)
505075:	74 09                	je     0x505080
505077:	83 bb 34 01 00 00 01 	cmpl   $0x1,0x134(%ebx)
50507e:	7f 04                	jg     0x505084
505080:	33 c9                	xor    %ecx,%ecx
505082:	eb 05                	jmp    0x505089
505084:	b9 01 00 00 00       	mov    $0x1,%ecx
505089:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
50508d:	33 c0                	xor    %eax,%eax
50508f:	89 44 24 04          	mov    %eax,0x4(%esp)
505093:	8b bb d4 00 00 00    	mov    0xd4(%ebx),%edi
505099:	8b 04 24             	mov    (%esp),%eax
50509c:	8d 90 8c 00 00 00    	lea    0x8c(%eax),%edx
5050a2:	89 54 24 18          	mov    %edx,0x18(%esp)
5050a6:	8b 0c 24             	mov    (%esp),%ecx
5050a9:	8d 71 64             	lea    0x64(%ecx),%esi
5050ac:	e9 6a 01 00 00       	jmp    0x50521b
5050b1:	8b 47 08             	mov    0x8(%edi),%eax
5050b4:	8b 4f 24             	mov    0x24(%edi),%ecx
5050b7:	f7 e9                	imul   %ecx
5050b9:	99                   	cltd
5050ba:	f7 bb 34 01 00 00    	idivl  0x134(%ebx)
5050c0:	8b e8                	mov    %eax,%ebp
5050c2:	8b 47 0c             	mov    0xc(%edi),%eax
5050c5:	f7 e9                	imul   %ecx
5050c7:	99                   	cltd
5050c8:	f7 bb 34 01 00 00    	idivl  0x134(%ebx)
5050ce:	8b c8                	mov    %eax,%ecx
5050d0:	8b 83 2c 01 00 00    	mov    0x12c(%ebx),%eax
5050d6:	89 44 24 10          	mov    %eax,0x10(%esp)
5050da:	8b 93 30 01 00 00    	mov    0x130(%ebx),%edx
5050e0:	89 54 24 14          	mov    %edx,0x14(%esp)
5050e4:	89 0e                	mov    %ecx,(%esi)
5050e6:	c7 44 24 08 01 00 00 	movl   $0x1,0x8(%esp)
5050ed:	00
5050ee:	83 7f 30 00          	cmpl   $0x0,0x30(%edi)
5050f2:	75 12                	jne    0x505106
5050f4:	c7 46 d0 58 4c 50 00 	movl   $0x504c58,-0x30(%esi)
5050fb:	33 c9                	xor    %ecx,%ecx
5050fd:	89 4c 24 08          	mov    %ecx,0x8(%esp)
505101:	e9 d9 00 00 00       	jmp    0x5051df
505106:	3b 6c 24 10          	cmp    0x10(%esp),%ebp
50510a:	75 18                	jne    0x505124
50510c:	3b 4c 24 14          	cmp    0x14(%esp),%ecx
505110:	75 12                	jne    0x505124
505112:	c7 46 d0 4c 4c 50 00 	movl   $0x504c4c,-0x30(%esi)
505119:	33 c0                	xor    %eax,%eax
50511b:	89 44 24 08          	mov    %eax,0x8(%esp)
50511f:	e9 bb 00 00 00       	jmp    0x5051df
505124:	8b d5                	mov    %ebp,%edx
505126:	03 d2                	add    %edx,%edx
505128:	3b 54 24 10          	cmp    0x10(%esp),%edx
50512c:	75 2b                	jne    0x505159
50512e:	3b 4c 24 14          	cmp    0x14(%esp),%ecx
505132:	75 25                	jne    0x505159
505134:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
505139:	74 12                	je     0x50514d
50513b:	83 7f 28 02          	cmpl   $0x2,0x28(%edi)
50513f:	76 0c                	jbe    0x50514d
505141:	c7 46 d0 10 4e 50 00 	movl   $0x504e10,-0x30(%esi)
505148:	e9 92 00 00 00       	jmp    0x5051df
50514d:	c7 46 d0 24 4d 50 00 	movl   $0x504d24,-0x30(%esi)
505154:	e9 86 00 00 00       	jmp    0x5051df
505159:	8b c5                	mov    %ebp,%eax
50515b:	03 c0                	add    %eax,%eax
50515d:	3b 44 24 10          	cmp    0x10(%esp),%eax
505161:	75 33                	jne    0x505196
505163:	8b d1                	mov    %ecx,%edx
505165:	03 d2                	add    %edx,%edx
505167:	3b 54 24 14          	cmp    0x14(%esp),%edx
50516b:	75 29                	jne    0x505196
50516d:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
505172:	74 19                	je     0x50518d
505174:	83 7f 28 02          	cmpl   $0x2,0x28(%edi)
505178:	76 13                	jbe    0x50518d
50517a:	c7 46 d0 c4 4e 50 00 	movl   $0x504ec4,-0x30(%esi)
505181:	8b 0c 24             	mov    (%esp),%ecx
505184:	c7 41 08 01 00 00 00 	movl   $0x1,0x8(%ecx)
50518b:	eb 52                	jmp    0x5051df
50518d:	c7 46 d0 80 4d 50 00 	movl   $0x504d80,-0x30(%esi)
505194:	eb 49                	jmp    0x5051df
505196:	8b 44 24 10          	mov    0x10(%esp),%eax
50519a:	99                   	cltd
50519b:	f7 fd                	idiv   %ebp
50519d:	85 d2                	test   %edx,%edx
50519f:	75 2f                	jne    0x5051d0
5051a1:	8b 44 24 14          	mov    0x14(%esp),%eax
5051a5:	99                   	cltd
5051a6:	f7 f9                	idiv   %ecx
5051a8:	85 d2                	test   %edx,%edx
5051aa:	75 24                	jne    0x5051d0
5051ac:	c7 46 d0 68 4c 50 00 	movl   $0x504c68,-0x30(%esi)
5051b3:	8b 44 24 10          	mov    0x10(%esp),%eax
5051b7:	99                   	cltd
5051b8:	f7 fd                	idiv   %ebp
5051ba:	8b 54 24 18          	mov    0x18(%esp),%edx
5051be:	88 02                	mov    %al,(%edx)
5051c0:	8b 44 24 14          	mov    0x14(%esp),%eax
5051c4:	99                   	cltd
5051c5:	f7 f9                	idiv   %ecx
5051c7:	8b 4c 24 18          	mov    0x18(%esp),%ecx
5051cb:	88 41 0a             	mov    %al,0xa(%ecx)
5051ce:	eb 0f                	jmp    0x5051df
5051d0:	8b 03                	mov    (%ebx),%eax
5051d2:	c7 40 14 25 00 00 00 	movl   $0x25,0x14(%eax)
5051d9:	8b c3                	mov    %ebx,%eax
5051db:	8b 10                	mov    (%eax),%edx
5051dd:	ff 12                	call   *(%edx)
5051df:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
5051e4:	74 27                	je     0x50520d
5051e6:	8b 8b 30 01 00 00    	mov    0x130(%ebx),%ecx
5051ec:	51                   	push   %ecx
5051ed:	8b 93 2c 01 00 00    	mov    0x12c(%ebx),%edx
5051f3:	8b 43 6c             	mov    0x6c(%ebx),%eax
5051f6:	e8 81 29 00 00       	call   0x507b7c
5051fb:	8b c8                	mov    %eax,%ecx
5051fd:	8b c3                	mov    %ebx,%eax
5051ff:	ba 01 00 00 00       	mov    $0x1,%edx