422f14:	81 c1 00 10 ff ff    	add    $0xffff1000,%ecx
422f1a:	8b 35 88 99 43 00    	mov    0x439988,%esi
422f20:	c1 e9 04             	shr    $0x4,%ecx
422f23:	81 c1 00 ef 01 00    	add    $0x1ef00,%ecx
422f29:	51                   	push   %ecx
422f2a:	6a 00                	push   $0x0
422f2c:	68 65 03 00 00       	push   $0x365
422f31:	ff 77 1c             	push   0x1c(%edi)
422f34:	ff d6                	call   *%esi
422f36:	85 c0                	test   %eax,%eax
422f38:	75 ae                	jne    0x422ee8
422f3a:	50                   	push   %eax
422f3b:	68 47 e1 00 00       	push   $0xe147
422f40:	68 11 01 00 00       	push   $0x111
422f45:	ff 77 1c             	push   0x1c(%edi)
422f48:	ff d6                	call   *%esi
422f4a:	eb 9c                	jmp    0x422ee8
422f4c:	55                   	push   %ebp
422f4d:	8b ec                	mov    %esp,%ebp
422f4f:	81 ec 0c 01 00 00    	sub    $0x10c,%esp
422f55:	53                   	push   %ebx
422f56:	56                   	push   %esi
422f57:	57                   	push   %edi
422f58:	ff 71 1c             	push   0x1c(%ecx)
422f5b:	ff 15 5c 98 43 00    	call   *0x43985c
422f61:	50                   	push   %eax
422f62:	e8 59 73 ff ff       	call   0x41a2c0
422f67:	8b 35 80 97 43 00    	mov    0x439780,%esi
422f6d:	33 db                	xor    %ebx,%ebx
422f6f:	53                   	push   %ebx
422f70:	53                   	push   %ebx
422f71:	6a ff                	push   $0xffffffff
422f73:	ff 75 08             	push   0x8(%ebp)
422f76:	ff d6                	call   *%esi
422f78:	89 45 fc             	mov    %eax,-0x4(%ebp)
422f7b:	e8 c7 17 00 00       	call   0x424747
422f80:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
422f83:	8b 78 04             	mov    0x4(%eax),%edi
422f86:	76 2f                	jbe    0x422fb7
422f88:	8b 07                	mov    (%edi),%eax
422f8a:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
422f90:	89 45 f8             	mov    %eax,-0x8(%ebp)
422f93:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
422f99:	68 04 01 00 00       	push   $0x104
422f9e:	50                   	push   %eax
422f9f:	53                   	push   %ebx
422fa0:	ff 75 08             	push   0x8(%ebp)
422fa3:	ff d6                	call   *%esi
422fa5:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
422fab:	8b cf                	mov    %edi,%ecx
422fad:	50                   	push   %eax
422fae:	ff 55 f8             	call   *-0x8(%ebp)
422fb1:	43                   	inc    %ebx
422fb2:	3b 5d fc             	cmp    -0x4(%ebp),%ebx
422fb5:	72 dc                	jb     0x422f93
422fb7:	ff 75 08             	push   0x8(%ebp)
422fba:	ff 15 84 97 43 00    	call   *0x439784
422fc0:	5f                   	pop    %edi
422fc1:	5e                   	pop    %esi
422fc2:	5b                   	pop    %ebx
422fc3:	c9                   	leave
422fc4:	c2 04 00             	ret    $0x4
422fc7:	56                   	push   %esi
422fc8:	8b f1                	mov    %ecx,%esi
422fca:	e8 78 17 00 00       	call   0x424747
422fcf:	8b 40 04             	mov    0x4(%eax),%eax
422fd2:	39 70 1c             	cmp    %esi,0x1c(%eax)
422fd5:	75 0c                	jne    0x422fe3
422fd7:	8b 10                	mov    (%eax),%edx
422fd9:	8b c8                	mov    %eax,%ecx
422fdb:	ff 92 90 00 00 00    	call   *0x90(%edx)
422fe1:	5e                   	pop    %esi
422fe2:	c3                   	ret
422fe3:	6a 01                	push   $0x1
422fe5:	58                   	pop    %eax
422fe6:	5e                   	pop    %esi
422fe7:	c3                   	ret
422fe8:	56                   	push   %esi
422fe9:	57                   	push   %edi
422fea:	8b f9                	mov    %ecx,%edi
422fec:	e8 56 17 00 00       	call   0x424747
422ff1:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
422ff6:	8b 70 04             	mov    0x4(%eax),%esi
422ff9:	74 1c                	je     0x423017
422ffb:	39 7e 1c             	cmp    %edi,0x1c(%esi)
422ffe:	75 17                	jne    0x423017
423000:	6a 01                	push   $0x1
423002:	e8 81 10 00 00       	call   0x424088
423007:	6a 01                	push   $0x1
423009:	8b ce                	mov    %esi,%ecx
42300b:	e8 c5 de ff ff       	call   0x420ed5
423010:	8b 06                	mov    (%esi),%eax
423012:	8b ce                	mov    %esi,%ecx
423014:	ff 50 70             	call   *0x70(%eax)
423017:	5f                   	pop    %edi
423018:	5e                   	pop    %esi
423019:	c2 04 00             	ret    $0x4
42301c:	55                   	push   %ebp
42301d:	8b ec                	mov    %esp,%ebp
42301f:	81 ec 08 01 00 00    	sub    $0x108,%esp
423025:	56                   	push   %esi
423026:	89 4d fc             	mov    %ecx,-0x4(%ebp)
423029:	e8 19 17 00 00       	call   0x424747
42302e:	66 83 7d 0c 00       	cmpw   $0x0,0xc(%ebp)
423033:	8b 70 04             	mov    0x4(%eax),%esi
423036:	0f 84 94 00 00 00    	je     0x4230d0
42303c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42303f:	c1 e9 10             	shr    $0x10,%ecx
423042:	66 85 c9             	test   %cx,%cx
423045:	0f 84 85 00 00 00    	je     0x4230d0
42304b:	66 8b 86 b0 00 00 00 	mov    0xb0(%esi),%ax
423052:	66 39 45 0c          	cmp    %ax,0xc(%ebp)
423056:	75 78                	jne    0x4230d0
423058:	66 3b 8e b2 00 00 00 	cmp    0xb2(%esi),%cx
42305f:	75 6f                	jne    0x4230d0
423061:	57                   	push   %edi
423062:	8b 3d 34 97 43 00    	mov    0x439734,%edi
423068:	53                   	push   %ebx
423069:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
42306f:	68 03 01 00 00       	push   $0x103
423074:	51                   	push   %ecx
423075:	50                   	push   %eax
423076:	ff d7                	call   *%edi
423078:	8b 1d 38 97 43 00    	mov    0x439738,%ebx
42307e:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
423084:	50                   	push   %eax
423085:	ff d3                	call   *%ebx
423087:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
42308d:	68 03 01 00 00       	push   $0x103
423092:	50                   	push   %eax
423093:	66 8b 86 b2 00 00 00 	mov    0xb2(%esi),%ax
42309a:	50                   	push   %eax
42309b:	ff d7                	call   *%edi
42309d:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
4230a3:	50                   	push   %eax
4230a4:	ff d3                	call   *%ebx
4230a6:	0f b7 86 b2 00 00 00 	movzwl 0xb2(%esi),%eax
4230ad:	0f b7 8e b0 00 00 00 	movzwl 0xb0(%esi),%ecx
4230b4:	c1 e0 10             	shl    $0x10,%eax
4230b7:	0b c1                	or     %ecx,%eax
4230b9:	50                   	push   %eax
4230ba:	8b 45 fc             	mov    -0x4(%ebp),%eax
4230bd:	ff 70 1c             	push   0x1c(%eax)
4230c0:	68 e4 03 00 00       	push   $0x3e4
4230c5:	ff 75 08             	push   0x8(%ebp)
4230c8:	ff 15 88 99 43 00    	call   *0x439988
4230ce:	5b                   	pop    %ebx
4230cf:	5f                   	pop    %edi
4230d0:	33 c0                	xor    %eax,%eax
4230d2:	5e                   	pop    %esi
4230d3:	c9                   	leave
4230d4:	c2 08 00             	ret    $0x8
4230d7:	55                   	push   %ebp
4230d8:	8b ec                	mov    %esp,%ebp
4230da:	81 ec 10 02 00 00    	sub    $0x210,%esp
4230e0:	53                   	push   %ebx
4230e1:	56                   	push   %esi
4230e2:	8d 45 fc             	lea    -0x4(%ebp),%eax
4230e5:	57                   	push   %edi
4230e6:	50                   	push   %eax
4230e7:	8d 45 f8             	lea    -0x8(%ebp),%eax
4230ea:	50                   	push   %eax
4230eb:	bf e8 03 00 00       	mov    $0x3e8,%edi
4230f0:	ff 75 0c             	push   0xc(%ebp)
4230f3:	8b d9                	mov    %ecx,%ebx
4230f5:	57                   	push   %edi
4230f6:	e8 91 ff fe ff       	call   0x41308c
4230fb:	ff 75 fc             	push   -0x4(%ebp)
4230fe:	ff 15 28 97 43 00    	call   *0x439728
423104:	68 08 02 00 00       	push   $0x208
423109:	50                   	push   %eax
42310a:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
423110:	50                   	push   %eax
423111:	ff 15 2c 97 43 00    	call   *0x43972c
423117:	ff 75 fc             	push   -0x4(%ebp)
42311a:	ff 15 30 97 43 00    	call   *0x439730
423120:	ff 75 fc             	push   -0x4(%ebp)
423123:	be e4 03 00 00       	mov    $0x3e4,%esi
423128:	68 00 80 00 00       	push   $0x8000
42312d:	56                   	push   %esi
42312e:	57                   	push   %edi
42312f:	ff 75 0c             	push   0xc(%ebp)
423132:	e8 4f ff fe ff       	call   0x413086
423137:	50                   	push   %eax
423138:	ff 73 1c             	push   0x1c(%ebx)
42313b:	56                   	push   %esi
42313c:	ff 75 08             	push   0x8(%ebp)
42313f:	ff 15 40 98 43 00    	call   *0x439840
423145:	8b cb                	mov    %ebx,%ecx
423147:	e8 c5 a6 ff ff       	call   0x41d811
42314c:	85 c0                	test   %eax,%eax
42314e:	74 19                	je     0x423169
423150:	e8 f2 15 00 00       	call   0x424747
423155:	8b 40 04             	mov    0x4(%eax),%eax
423158:	8d 8d f0 fd ff ff    	lea    -0x210(%ebp),%ecx
42315e:	51                   	push   %ecx
42315f:	8b c8                	mov    %eax,%ecx
423161:	8b 10                	mov    (%eax),%edx
423163:	ff 92 9c 00 00 00    	call   *0x9c(%edx)
423169:	5f                   	pop    %edi
42316a:	5e                   	pop    %esi
42316b:	33 c0                	xor    %eax,%eax
42316d:	5b                   	pop    %ebx
42316e:	c9                   	leave
42316f:	c2 08 00             	ret    $0x8
423172:	ff 74 24 08          	push   0x8(%esp)
423176:	ff 71 1c             	push   0x1c(%ecx)
423179:	68 e1 03 00 00       	push   $0x3e1
42317e:	ff 74 24 10          	push   0x10(%esp)
423182:	ff 15 40 98 43 00    	call   *0x439840
423188:	33 c0                	xor    %eax,%eax
42318a:	c2 08 00             	ret    $0x8
42318d:	8b 81 98 00 00 00    	mov    0x98(%ecx),%eax
423193:	c3                   	ret
423194:	53                   	push   %ebx
423195:	8b 5c 24 08          	mov    0x8(%esp),%ebx
423199:	56                   	push   %esi
42319a:	8b f1                	mov    %ecx,%esi
42319c:	57                   	push   %edi
42319d:	8b be 98 00 00 00    	mov    0x98(%esi),%edi
4231a3:	3b df                	cmp    %edi,%ebx
4231a5:	74 41                	je     0x4231e8
4231a7:	83 a6 98 00 00 00 00 	andl   $0x0,0x98(%esi)
4231ae:	85 ff                	test   %edi,%edi
4231b0:	74 0e                	je     0x4231c0
4231b2:	8b 07                	mov    (%edi),%eax
4231b4:	57                   	push   %edi
4231b5:	53                   	push   %ebx
4231b6:	6a 00                	push   $0x0
4231b8:	8b cf                	mov    %edi,%ecx
4231ba:	ff 90 ec 00 00 00    	call   *0xec(%eax)
4231c0:	83 be 98 00 00 00 00 	cmpl   $0x0,0x98(%esi)
4231c7:	75 1f                	jne    0x4231e8
4231c9:	85 db                	test   %ebx,%ebx
4231cb:	89 9e 98 00 00 00    	mov    %ebx,0x98(%esi)
4231d1:	74 15                	je     0x4231e8
4231d3:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
4231d8:	74 0e                	je     0x4231e8
4231da:	8b 03                	mov    (%ebx),%eax
4231dc:	57                   	push   %edi
4231dd:	53                   	push   %ebx
4231de:	6a 01                	push   $0x1
4231e0:	8b cb                	mov    %ebx,%ecx
4231e2:	ff 90 ec 00 00 00    	call   *0xec(%eax)
4231e8:	5f                   	pop    %edi
4231e9:	5e                   	pop    %esi
4231ea:	5b                   	pop    %ebx
4231eb:	c2 08 00             	ret    $0x8
4231ee:	8b 81 98 00 00 00    	mov    0x98(%ecx),%eax
4231f4:	85 c0                	test   %eax,%eax
4231f6:	74 09                	je     0x423201
4231f8:	8b c8                	mov    %eax,%ecx
4231fa:	e8 54 a6 ff ff       	call   0x41d853
4231ff:	eb 05                	jmp    0x423206
423201:	e8 0f 70 ff ff       	call   0x41a215
423206:	c2 04 00             	ret    $0x4
423209:	e8 7f ff ff ff       	call   0x42318d
42320e:	85 c0                	test   %eax,%eax
423210:	74 04                	je     0x423216
423212:	8b 40 3c             	mov    0x3c(%eax),%eax
423215:	c3                   	ret
423216:	33 c0                	xor    %eax,%eax
423218:	c3                   	ret
423219:	55                   	push   %ebp
42321a:	8b ec                	mov    %esp,%ebp
42321c:	53                   	push   %ebx
42321d:	56                   	push   %esi
42321e:	57                   	push   %edi
42321f:	8b 7d 08             	mov    0x8(%ebp),%edi
423222:	8b cf                	mov    %edi,%ecx
423224:	e8 14 0e 00 00       	call   0x42403d
423229:	33 db                	xor    %ebx,%ebx
42322b:	8b f0                	mov    %eax,%esi
42322d:	39 5d 10             	cmp    %ebx,0x10(%ebp)
423230:	74 16                	je     0x423248
423232:	8b 07                	mov    (%edi),%eax
423234:	ff 75 0c             	push   0xc(%ebp)
423237:	8b cf                	mov    %edi,%ecx
423239:	ff 90 cc 00 00 00    	call   *0xcc(%eax)
42323f:	83 8e b8 00 00 00 0c 	orl    $0xc,0xb8(%esi)
423246:	eb 45                	jmp    0x42328d
423248:	8b 45 0c             	mov    0xc(%ebp),%eax
42324b:	8b cf                	mov    %edi,%ecx
42324d:	f7 d8                	neg    %eax
42324f:	1b c0                	sbb    %eax,%eax
423251:	24 c0                	and    $0xc0,%al
423253:	05 80 00 00 00       	add    $0x80,%eax
423258:	0c 17                	or     $0x17,%al
42325a:	50                   	push   %eax
42325b:	53                   	push   %ebx
42325c:	53                   	push   %ebx
42325d:	53                   	push   %ebx
42325e:	53                   	push   %ebx
42325f:	53                   	push   %ebx
423260:	e8 36 a5 ff ff       	call   0x41d79b
423265:	8b 07                	mov    (%edi),%eax
423267:	ff 75 0c             	push   0xc(%ebp)
42326a:	8b cf                	mov    %edi,%ecx
42326c:	ff 90 cc 00 00 00    	call   *0xcc(%eax)
423272:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
423275:	75 0b                	jne    0x423282
423277:	8b cf                	mov    %edi,%ecx
423279:	e8 d0 0d 00 00       	call   0x42404e
42327e:	85 c0                	test   %eax,%eax
423280:	75 0b                	jne    0x42328d
423282:	8b 06                	mov    (%esi),%eax
423284:	53                   	push   %ebx
423285:	8b ce                	mov    %esi,%ecx
423287:	ff 90 d0 00 00 00    	call   *0xd0(%eax)
42328d:	8b cf                	mov    %edi,%ecx
42328f:	e8 ba 0d 00 00       	call   0x42404e
423294:	85 c0                	test   %eax,%eax
423296:	74 75                	je     0x42330d
423298:	8b 4f 70             	mov    0x70(%edi),%ecx
42329b:	3b cb                	cmp    %ebx,%ecx
42329d:	74 0a                	je     0x4232a9
42329f:	8b 01                	mov    (%ecx),%eax
4232a1:	ff 90 e8 00 00 00    	call   *0xe8(%eax)
4232a7:	eb 08                	jmp    0x4232b1
4232a9:	33 c0                	xor    %eax,%eax
4232ab:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
4232ae:	0f 95 c0             	setne  %al
4232b1:	83 f8 01             	cmp    $0x1,%eax
4232b4:	75 23                	jne    0x4232d9
4232b6:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
4232b9:	74 1e                	je     0x4232d9
4232bb:	83 8e 88 00 00 00 ff 	orl    $0xffffffff,0x88(%esi)
4232c2:	39 5d 10             	cmp    %ebx,0x10(%ebp)
4232c5:	8d 86 88 00 00 00    	lea    0x88(%esi),%eax
4232cb:	74 08                	je     0x4232d5
4232cd:	c7 00 08 00 00 00    	movl   $0x8,(%eax)
4232d3:	eb 2d                	jmp    0x423302
4232d5:	6a 08                	push   $0x8
4232d7:	eb 1b                	jmp    0x4232f4
4232d9:	3b c3                	cmp    %ebx,%eax
4232db:	75 20                	jne    0x4232fd
4232dd:	83 8e 88 00 00 00 ff 	orl    $0xffffffff,0x88(%esi)
4232e4:	39 5d 10             	cmp    %ebx,0x10(%ebp)
4232e7:	8d 86 88 00 00 00    	lea    0x88(%esi),%eax
4232ed:	74 04                	je     0x4232f3
4232ef:	89 18                	mov    %ebx,(%eax)
4232f1:	eb 1a                	jmp    0x42330d
4232f3:	53                   	push   %ebx
4232f4:	8b ce                	mov    %esi,%ecx
4232f6:	e8 ef a4 ff ff       	call   0x41d7ea
4232fb:	eb 10                	jmp    0x42330d
4232fd:	39 5d 10             	cmp    %ebx,0x10(%ebp)
423300:	75 0b                	jne    0x42330d
423302:	8b 06                	mov    (%esi),%eax
423304:	53                   	push   %ebx