477f6a:	75 0e                	jne    0x477f7a
477f6c:	33 d2                	xor    %edx,%edx
477f6e:	8b c6                	mov    %esi,%eax
477f70:	e8 6f fe ff ff       	call   0x477de4
477f75:	e9 b3 00 00 00       	jmp    0x47802d
477f7a:	8b 45 fc             	mov    -0x4(%ebp),%eax
477f7d:	8b 80 98 00 00 00    	mov    0x98(%eax),%eax
477f83:	e8 dc d5 ff ff       	call   0x475564
477f88:	e9 a0 00 00 00       	jmp    0x47802d
477f8d:	8b 45 fc             	mov    -0x4(%ebp),%eax
477f90:	8b 80 98 00 00 00    	mov    0x98(%eax),%eax
477f96:	85 c0                	test   %eax,%eax
477f98:	0f 84 8f 00 00 00    	je     0x47802d
477f9e:	e8 01 d6 ff ff       	call   0x4755a4
477fa3:	e9 85 00 00 00       	jmp    0x47802d
477fa8:	3b 75 fc             	cmp    -0x4(%ebp),%esi
477fab:	74 0e                	je     0x477fbb
477fad:	b2 01                	mov    $0x1,%dl
477faf:	8b 45 fc             	mov    -0x4(%ebp),%eax
477fb2:	e8 25 d5 ff ff       	call   0x4754dc
477fb7:	84 c0                	test   %al,%al
477fb9:	75 72                	jne    0x47802d
477fbb:	85 f6                	test   %esi,%esi
477fbd:	74 6e                	je     0x47802d
477fbf:	80 be a4 00 00 00 01 	cmpb   $0x1,0xa4(%esi)
477fc6:	74 65                	je     0x47802d
477fc8:	b2 01                	mov    $0x1,%dl
477fca:	8b c6                	mov    %esi,%eax
477fcc:	e8 13 fe ff ff       	call   0x477de4
477fd1:	eb 5a                	jmp    0x47802d
477fd3:	3b 75 fc             	cmp    -0x4(%ebp),%esi
477fd6:	75 18                	jne    0x477ff0
477fd8:	8b 45 fc             	mov    -0x4(%ebp),%eax
477fdb:	80 b8 a4 00 00 00 01 	cmpb   $0x1,0xa4(%eax)
477fe2:	74 0c                	je     0x477ff0
477fe4:	b2 01                	mov    $0x1,%dl
477fe6:	8b 45 fc             	mov    -0x4(%ebp),%eax
477fe9:	e8 ee d4 ff ff       	call   0x4754dc
477fee:	eb 3d                	jmp    0x47802d
477ff0:	66 83 3b 28          	cmpw   $0x28,(%ebx)
477ff4:	0f 94 c2             	sete   %dl
477ff7:	8b 45 fc             	mov    -0x4(%ebp),%eax
477ffa:	e8 e5 fd ff ff       	call   0x477de4
477fff:	eb 2c                	jmp    0x47802d
478001:	66 83 3b 24          	cmpw   $0x24,(%ebx)
478005:	0f 94 c1             	sete   %cl
478008:	33 d2                	xor    %edx,%edx
47800a:	8b 45 fc             	mov    -0x4(%ebp),%eax
47800d:	e8 e2 f8 ff ff       	call   0x4778f4
478012:	8b d0                	mov    %eax,%edx
478014:	8b 45 fc             	mov    -0x4(%ebp),%eax
478017:	e8 e8 d6 ff ff       	call   0x475704
47801c:	8b 45 fc             	mov    -0x4(%ebp),%eax
47801f:	e8 d0 01 00 00       	call   0x4781f4
478024:	eb 07                	jmp    0x47802d
478026:	55                   	push   %ebp
478027:	e8 e0 fd ff ff       	call   0x477e0c
47802c:	59                   	pop    %ecx
47802d:	66 c7 03 00 00       	movw   $0x0,(%ebx)
478032:	5e                   	pop    %esi
478033:	5b                   	pop    %ebx
478034:	59                   	pop    %ecx
478035:	5d                   	pop    %ebp
478036:	c3                   	ret
478037:	90                   	nop
478038:	e8 9b cb ff ff       	call   0x474bd8
47803d:	c6 40 5c 01          	movb   $0x1,0x5c(%eax)
478041:	c3                   	ret
478042:	8b c0                	mov    %eax,%eax
478044:	53                   	push   %ebx
478045:	8b da                	mov    %edx,%ebx
478047:	e8 8c cb ff ff       	call   0x474bd8
47804c:	8b 53 1c             	mov    0x1c(%ebx),%edx
47804f:	89 50 60             	mov    %edx,0x60(%eax)
478052:	8b 53 24             	mov    0x24(%ebx),%edx
478055:	8a 52 70             	mov    0x70(%edx),%dl
478058:	88 50 64             	mov    %dl,0x64(%eax)
47805b:	c6 40 5c 02          	movb   $0x2,0x5c(%eax)
47805f:	5b                   	pop    %ebx
478060:	c3                   	ret
478061:	8d 40 00             	lea    0x0(%eax),%eax
478064:	53                   	push   %ebx
478065:	8b da                	mov    %edx,%ebx
478067:	e8 6c cb ff ff       	call   0x474bd8
47806c:	89 58 60             	mov    %ebx,0x60(%eax)
47806f:	c6 40 5c 04          	movb   $0x4,0x5c(%eax)
478073:	5b                   	pop    %ebx
478074:	c3                   	ret
478075:	8d 40 00             	lea    0x0(%eax),%eax
478078:	53                   	push   %ebx
478079:	56                   	push   %esi
47807a:	8b f1                	mov    %ecx,%esi
47807c:	8b da                	mov    %edx,%ebx
47807e:	e8 55 cb ff ff       	call   0x474bd8
478083:	89 58 60             	mov    %ebx,0x60(%eax)
478086:	89 70 64             	mov    %esi,0x64(%eax)
478089:	c6 40 5c 03          	movb   $0x3,0x5c(%eax)
47808d:	5e                   	pop    %esi
47808e:	5b                   	pop    %ebx
47808f:	c3                   	ret
478090:	53                   	push   %ebx
478091:	56                   	push   %esi
478092:	57                   	push   %edi
478093:	8b da                	mov    %edx,%ebx
478095:	8b f8                	mov    %eax,%edi
478097:	8b 87 ac 00 00 00    	mov    0xac(%edi),%eax
47809d:	85 c0                	test   %eax,%eax
47809f:	74 3d                	je     0x4780de
4780a1:	8b 50 1c             	mov    0x1c(%eax),%edx
4780a4:	80 7a 3e 00          	cmpb   $0x0,0x3e(%edx)
4780a8:	74 34                	je     0x4780de
4780aa:	8b 70 1c             	mov    0x1c(%eax),%esi
4780ad:	f6 46 64 20          	testb  $0x20,0x64(%esi)
4780b1:	75 0d                	jne    0x4780c0
4780b3:	b2 01                	mov    $0x1,%dl
4780b5:	8b c7                	mov    %edi,%eax
4780b7:	e8 20 d4 ff ff       	call   0x4754dc
4780bc:	84 c0                	test   %al,%al
4780be:	75 51                	jne    0x478111
4780c0:	f6 46 64 02          	testb  $0x2,0x64(%esi)
4780c4:	74 0f                	je     0x4780d5
4780c6:	8b d3                	mov    %ebx,%edx
4780c8:	8b 87 ac 00 00 00    	mov    0xac(%edi),%eax
4780ce:	e8 1d c7 ff ff       	call   0x4747f0
4780d3:	eb 3c                	jmp    0x478111
4780d5:	8b c7                	mov    %edi,%eax
4780d7:	e8 5c ff ff ff       	call   0x478038
4780dc:	eb 33                	jmp    0x478111
4780de:	8b c7                	mov    %edi,%eax
4780e0:	e8 53 ff ff ff       	call   0x478038
4780e5:	eb 2a                	jmp    0x478111
4780e7:	00 54 6f 6f          	add    %dl,0x6f(%edi,%ebp,2)
4780eb:	6c                   	insb   (%dx),%es:(%edi)
4780ec:	62 61 72             	bound  %esp,0x72(%ecx)
4780ef:	32 30                	xor    (%eax),%dh
4780f1:	30 30                	xor    %dh,(%eax)
4780f3:	20 28                	and    %ch,(%eax)
4780f5:	43                   	inc    %ebx
4780f6:	29 20                	sub    %esp,(%eax)
4780f8:	31 39                	xor    %edi,(%ecx)
4780fa:	39 38                	cmp    %edi,(%eax)
4780fc:	2d 32 30 30 33       	sub    $0x33303032,%eax
478101:	20 4a 6f             	and    %cl,0x6f(%edx)
478104:	72 64                	jb     0x47816a
478106:	61                   	popa
478107:	6e                   	outsb  %ds:(%esi),(%dx)
478108:	20 52 75             	and    %dl,0x75(%edx)
47810b:	73 73                	jae    0x478180
47810d:	65 6c                	gs insb (%dx),%es:(%edi)
47810f:	6c                   	insb   (%dx),%es:(%edi)
478110:	00 5f 5e             	add    %bl,0x5e(%edi)
478113:	5b                   	pop    %ebx
478114:	c3                   	ret
478115:	8d 40 00             	lea    0x0(%eax),%eax
478118:	53                   	push   %ebx
478119:	56                   	push   %esi
47811a:	57                   	push   %edi
47811b:	55                   	push   %ebp
47811c:	83 c4 f4             	add    $0xfffffff4,%esp
47811f:	8b da                	mov    %edx,%ebx
478121:	8b f8                	mov    %eax,%edi
478123:	8b c7                	mov    %edi,%eax
478125:	e8 5a cb ff ff       	call   0x474c84
47812a:	84 db                	test   %bl,%bl
47812c:	74 5a                	je     0x478188
47812e:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
478133:	8b 47 74             	mov    0x74(%edi),%eax
478136:	83 e8 13             	sub    $0x13,%eax
478139:	89 04 24             	mov    %eax,(%esp)
47813c:	8b b7 c0 00 00 00    	mov    0xc0(%edi),%esi
478142:	4e                   	dec    %esi
478143:	85 f6                	test   %esi,%esi
478145:	7c 2f                	jl     0x478176
478147:	46                   	inc    %esi
478148:	33 ed                	xor    %ebp,%ebp
47814a:	8b 87 c4 00 00 00    	mov    0xc4(%edi),%eax
478150:	8b 04 a8             	mov    (%eax,%ebp,4),%eax
478153:	80 78 14 00          	cmpb   $0x0,0x14(%eax)
478157:	74 19                	je     0x478172
478159:	8b 48 1c             	mov    0x1c(%eax),%ecx
47815c:	f6 41 64 04          	testb  $0x4,0x64(%ecx)
478160:	75 10                	jne    0x478172
478162:	3b 50 10             	cmp    0x10(%eax),%edx
478165:	7e 0b                	jle    0x478172
478167:	8b 48 10             	mov    0x10(%eax),%ecx
47816a:	3b 0c 24             	cmp    (%esp),%ecx
47816d:	7e 03                	jle    0x478172
47816f:	8b 50 10             	mov    0x10(%eax),%edx
478172:	45                   	inc    %ebp
478173:	4e                   	dec    %esi
478174:	75 d4                	jne    0x47814a
478176:	81 fa ff ff ff 7f    	cmp    $0x7fffffff,%edx
47817c:	74 6c                	je     0x4781ea
47817e:	8b 47 74             	mov    0x74(%edi),%eax
478181:	83 e8 13             	sub    $0x13,%eax
478184:	2b d0                	sub    %eax,%edx
478186:	eb 51                	jmp    0x4781d9
478188:	ba 00 00 00 80       	mov    $0x80000000,%edx
47818d:	c7 04 24 13 00 00 00 	movl   $0x13,(%esp)
478194:	8b b7 c0 00 00 00    	mov    0xc0(%edi),%esi
47819a:	4e                   	dec    %esi
47819b:	85 f6                	test   %esi,%esi
47819d:	7c 2f                	jl     0x4781ce
47819f:	46                   	inc    %esi
4781a0:	33 ed                	xor    %ebp,%ebp
4781a2:	8b 87 c4 00 00 00    	mov    0xc4(%edi),%eax
4781a8:	8b 04 a8             	mov    (%eax,%ebp,4),%eax
4781ab:	80 78 14 00          	cmpb   $0x0,0x14(%eax)
4781af:	74 19                	je     0x4781ca
4781b1:	8b 48 1c             	mov    0x1c(%eax),%ecx
4781b4:	f6 41 64 04          	testb  $0x4,0x64(%ecx)
4781b8:	75 10                	jne    0x4781ca
4781ba:	3b 50 08             	cmp    0x8(%eax),%edx
4781bd:	7d 0b                	jge    0x4781ca
4781bf:	8b 48 08             	mov    0x8(%eax),%ecx
4781c2:	3b 0c 24             	cmp    (%esp),%ecx
4781c5:	7d 03                	jge    0x4781ca
4781c7:	8b 50 08             	mov    0x8(%eax),%edx
4781ca:	45                   	inc    %ebp
4781cb:	4e                   	dec    %esi
4781cc:	75 d4                	jne    0x4781a2
4781ce:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
4781d4:	74 14                	je     0x4781ea
4781d6:	83 ea 13             	sub    $0x13,%edx
4781d9:	01 97 a8 00 00 00    	add    %edx,0xa8(%edi)
4781df:	8d 54 24 04          	lea    0x4(%esp),%edx
4781e3:	8b c7                	mov    %edi,%eax
4781e5:	e8 0e f1 ff ff       	call   0x4772f8
4781ea:	83 c4 0c             	add    $0xc,%esp
4781ed:	5d                   	pop    %ebp
4781ee:	5f                   	pop    %edi
4781ef:	5e                   	pop    %esi
4781f0:	5b                   	pop    %ebx
4781f1:	c3                   	ret
4781f2:	8b c0                	mov    %eax,%eax
4781f4:	53                   	push   %ebx
4781f5:	56                   	push   %esi
4781f6:	83 c4 f8             	add    $0xfffffff8,%esp
4781f9:	8b d8                	mov    %eax,%ebx
4781fb:	8b c3                	mov    %ebx,%eax
4781fd:	e8 82 ca ff ff       	call   0x474c84
478202:	8b 83 ac 00 00 00    	mov    0xac(%ebx),%eax
478208:	85 c0                	test   %eax,%eax
47820a:	74 44                	je     0x478250
47820c:	80 78 14 00          	cmpb   $0x0,0x14(%eax)
478210:	74 3e                	je     0x478250
478212:	8b 50 08             	mov    0x8(%eax),%edx
478215:	83 fa 13             	cmp    $0x13,%edx
478218:	7d 18                	jge    0x478232
47821a:	b8 13 00 00 00       	mov    $0x13,%eax
47821f:	2b c2                	sub    %edx,%eax
478221:	29 83 a8 00 00 00    	sub    %eax,0xa8(%ebx)
478227:	8b d4                	mov    %esp,%edx
478229:	8b c3                	mov    %ebx,%eax
47822b:	e8 c8 f0 ff ff       	call   0x4772f8
478230:	eb 1e                	jmp    0x478250
478232:	8b 53 74             	mov    0x74(%ebx),%edx
478235:	83 ea 13             	sub    $0x13,%edx
478238:	8b 70 10             	mov    0x10(%eax),%esi
47823b:	3b d6                	cmp    %esi,%edx
47823d:	7d 11                	jge    0x478250
47823f:	2b d6                	sub    %esi,%edx
478241:	29 93 a8 00 00 00    	sub    %edx,0xa8(%ebx)
478247:	8b d4                	mov    %esp,%edx
478249:	8b c3                	mov    %ebx,%eax
47824b:	e8 a8 f0 ff ff       	call   0x4772f8
478250:	59                   	pop    %ecx
478251:	5a                   	pop    %edx
478252:	5e                   	pop    %esi
478253:	5b                   	pop    %ebx
478254:	c3                   	ret
478255:	8d 40 00             	lea    0x0(%eax),%eax
478258:	3a 90 bc 00 00 00    	cmp    0xbc(%eax),%dl
47825e:	74 0b                	je     0x47826b
478260:	88 90 bc 00 00 00    	mov    %dl,0xbc(%eax)
478266:	e8 91 d9 ff ff       	call   0x475bfc
47826b:	c3                   	ret
47826c:	53                   	push   %ebx
47826d:	8b d8                	mov    %eax,%ebx
47826f:	8b c3                	mov    %ebx,%eax
478271:	e8 62 c9 ff ff       	call   0x474bd8
478276:	8b 40 44             	mov    0x44(%eax),%eax
478279:	5b                   	pop    %ebx
47827a:	c3                   	ret
47827b:	90                   	nop
47827c:	55                   	push   %ebp
47827d:	8b ec                	mov    %esp,%ebp
47827f:	83 c4 f4             	add    $0xfffffff4,%esp
478282:	53                   	push   %ebx
478283:	56                   	push   %esi
478284:	57                   	push   %edi
478285:	84 d2                	test   %dl,%dl
478287:	74 08                	je     0x478291
478289:	83 c4 f0             	add    $0xfffffff0,%esp
47828c:	e8 4b bb f8 ff       	call   0x403ddc
478291:	8b f1                	mov    %ecx,%esi
478293:	8b da                	mov    %edx,%ebx
478295:	8b f8                	mov    %eax,%edi
478297:	33 d2                	xor    %edx,%edx
478299:	8b c7                	mov    %edi,%eax
47829b:	e8 a8 b7 f8 ff       	call   0x403a48
4782a0:	83 3d 2c 8d 6a 00 00 	cmpl   $0x0,0x6a8d2c
4782a7:	75 24                	jne    0x4782cd
4782a9:	68 70 83 47 00       	push   $0x478370
4782ae:	68 88 83 47 00       	push   $0x478388
4782b3:	e8 70 ef f8 ff       	call   0x407228
4782b8:	50                   	push   %eax
4782b9:	e8 72 ef f8 ff       	call   0x407230
4782be:	a3 30 8d 6a 00       	mov    %eax,0x6a8d30
4782c3:	c7 05 2c 8d 6a 00 ff 	movl   $0xffffffff,0x6a8d2c
4782ca:	ff ff ff
4782cd:	e8 ee f7 f8 ff       	call   0x407ac0
4782d2:	89 45 f4             	mov    %eax,-0xc(%ebp)
4782d5:	8b 45 f4             	mov    -0xc(%ebp),%eax
4782d8:	8d 55 f8             	lea    -0x8(%ebp),%edx
4782db:	e8 94 fc f8 ff       	call   0x407f74
4782e0:	8b 45 f8             	mov    -0x8(%ebp),%eax
4782e3:	89 05 24 8d 6a 00    	mov    %eax,0x6a8d24
4782e9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4782ec:	89 05 28 8d 6a 00    	mov    %eax,0x6a8d28
4782f2:	85 f6                	test   %esi,%esi
4782f4:	74 05                	je     0x4782fb
4782f6:	89 77 08             	mov    %esi,0x8(%edi)
4782f9:	eb 10                	jmp    0x47830b
4782fb:	6a 00                	push   $0x0
4782fd:	6a 00                	push   $0x0
4782ff:	e8 94 d4 fa ff       	call   0x425798
478304:	89 47 08             	mov    %eax,0x8(%edi)
478307:	c6 47 04 01          	movb   $0x1,0x4(%edi)
47830b:	83 3d 30 8d 6a 00 00 	cmpl   $0x0,0x6a8d30
478312:	74 08                	je     0x47831c
478314:	6a 01                	push   $0x1
478316:	ff 15 30 8d 6a 00    	call   *0x6a8d30
47831c:	8b 47 08             	mov    0x8(%edi),%eax
47831f:	50                   	push   %eax
478320:	e8 0b fa f8 ff       	call   0x407d30
478325:	68 00 7f 00 00       	push   $0x7f00
47832a:	6a 00                	push   $0x0
47832c:	e8 e7 f8 f8 ff       	call   0x407c18
478331:	50                   	push   %eax
478332:	e8 19 fa f8 ff       	call   0x407d50
478337:	6a 00                	push   $0x0
478339:	8b 57 08             	mov    0x8(%edi),%edx
47833c:	b9 fc ff ff ff       	mov    $0xfffffffc,%ecx
478341:	b8 04 00 00 00       	mov    $0x4,%eax
478346:	e8 ad 50 ff ff       	call   0x46d3f8
47834b:	c6 47 05 01          	movb   $0x1,0x5(%edi)
47834f:	8b c7                	mov    %edi,%eax
478351:	84 db                	test   %bl,%bl
478353:	74 0f                	je     0x478364