452f51:	8b d8                	mov    %eax,%ebx
452f53:	8b 43 10             	mov    0x10(%ebx),%eax
452f56:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
452f5c:	e8 eb 04 fb ff       	call   0x40344c
452f61:	5b                   	pop    %ebx
452f62:	c3                   	ret
452f63:	90                   	nop
452f64:	53                   	push   %ebx
452f65:	8b d8                	mov    %eax,%ebx
452f67:	8b 43 10             	mov    0x10(%ebx),%eax
452f6a:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
452f70:	e8 d7 04 fb ff       	call   0x40344c
452f75:	5b                   	pop    %ebx
452f76:	c3                   	ret
452f77:	90                   	nop
452f78:	53                   	push   %ebx
452f79:	8b d8                	mov    %eax,%ebx
452f7b:	8b 43 10             	mov    0x10(%ebx),%eax
452f7e:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
452f84:	e8 c3 04 fb ff       	call   0x40344c
452f89:	5b                   	pop    %ebx
452f8a:	c3                   	ret
452f8b:	90                   	nop
452f8c:	53                   	push   %ebx
452f8d:	8b d8                	mov    %eax,%ebx
452f8f:	8b 43 10             	mov    0x10(%ebx),%eax
452f92:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
452f98:	e8 af 04 fb ff       	call   0x40344c
452f9d:	5b                   	pop    %ebx
452f9e:	c3                   	ret
452f9f:	90                   	nop
452fa0:	53                   	push   %ebx
452fa1:	8b d8                	mov    %eax,%ebx
452fa3:	8b 43 10             	mov    0x10(%ebx),%eax
452fa6:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
452fac:	e8 9b 04 fb ff       	call   0x40344c
452fb1:	5b                   	pop    %ebx
452fb2:	c3                   	ret
452fb3:	90                   	nop
452fb4:	53                   	push   %ebx
452fb5:	8b d8                	mov    %eax,%ebx
452fb7:	8b 43 10             	mov    0x10(%ebx),%eax
452fba:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
452fc0:	e8 87 04 fb ff       	call   0x40344c
452fc5:	5b                   	pop    %ebx
452fc6:	c3                   	ret
452fc7:	90                   	nop
452fc8:	53                   	push   %ebx
452fc9:	8b d8                	mov    %eax,%ebx
452fcb:	8b 43 10             	mov    0x10(%ebx),%eax
452fce:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
452fd4:	e8 73 04 fb ff       	call   0x40344c
452fd9:	5b                   	pop    %ebx
452fda:	c3                   	ret
452fdb:	90                   	nop
452fdc:	c3                   	ret
452fdd:	8d 40 00             	lea    0x0(%eax),%eax
452fe0:	c3                   	ret
452fe1:	8d 40 00             	lea    0x0(%eax),%eax
452fe4:	c3                   	ret
452fe5:	8d 40 00             	lea    0x0(%eax),%eax
452fe8:	c3                   	ret
452fe9:	8d 40 00             	lea    0x0(%eax),%eax
452fec:	c3                   	ret
452fed:	8d 40 00             	lea    0x0(%eax),%eax
452ff0:	c3                   	ret
452ff1:	8d 40 00             	lea    0x0(%eax),%eax
452ff4:	c3                   	ret
452ff5:	8d 40 00             	lea    0x0(%eax),%eax
452ff8:	c3                   	ret
452ff9:	8d 40 00             	lea    0x0(%eax),%eax
452ffc:	c3                   	ret
452ffd:	8d 40 00             	lea    0x0(%eax),%eax
453000:	c3                   	ret
453001:	8d 40 00             	lea    0x0(%eax),%eax
453004:	c3                   	ret
453005:	8d 40 00             	lea    0x0(%eax),%eax
453008:	c3                   	ret
453009:	8d 40 00             	lea    0x0(%eax),%eax
45300c:	53                   	push   %ebx
45300d:	56                   	push   %esi
45300e:	84 d2                	test   %dl,%dl
453010:	74 08                	je     0x45301a
453012:	83 c4 f0             	add    $0xfffffff0,%esp
453015:	e8 0a 06 fb ff       	call   0x403624
45301a:	8b da                	mov    %edx,%ebx
45301c:	8b f0                	mov    %eax,%esi
45301e:	33 d2                	xor    %edx,%edx
453020:	8b c6                	mov    %esi,%eax
453022:	e8 49 e3 fc ff       	call   0x421370
453027:	c6 46 6a 01          	movb   $0x1,0x6a(%esi)
45302b:	c7 86 80 00 00 00 ff 	movl   $0xffffffff,0x80(%esi)
453032:	ff ff ff
453035:	c6 86 86 00 00 00 01 	movb   $0x1,0x86(%esi)
45303c:	33 c0                	xor    %eax,%eax
45303e:	89 86 90 00 00 00    	mov    %eax,0x90(%esi)
453044:	8b c6                	mov    %esi,%eax
453046:	84 db                	test   %bl,%bl
453048:	74 0f                	je     0x453059
45304a:	e8 2d 06 fb ff       	call   0x40367c
45304f:	64 8f 05 00 00 00 00 	pop    %fs:0x0
453056:	83 c4 0c             	add    $0xc,%esp
453059:	8b c6                	mov    %esi,%eax
45305b:	5e                   	pop    %esi
45305c:	5b                   	pop    %ebx
45305d:	c3                   	ret
45305e:	8b c0                	mov    %eax,%eax
453060:	53                   	push   %ebx
453061:	56                   	push   %esi
453062:	e8 25 06 fb ff       	call   0x40368c
453067:	8b da                	mov    %edx,%ebx
453069:	8b f0                	mov    %eax,%esi
45306b:	8b 86 98 00 00 00    	mov    0x98(%esi),%eax
453071:	e8 4a 02 fb ff       	call   0x4032c0
453076:	8b 86 9c 00 00 00    	mov    0x9c(%esi),%eax
45307c:	e8 3f 02 fb ff       	call   0x4032c0
453081:	83 be 90 00 00 00 00 	cmpl   $0x0,0x90(%esi)
453088:	74 0b                	je     0x453095
45308a:	8d 86 90 00 00 00    	lea    0x90(%esi),%eax
453090:	e8 43 a4 fb ff       	call   0x40d4d8
453095:	8b d3                	mov    %ebx,%edx
453097:	80 e2 fc             	and    $0xfc,%dl
45309a:	8b c6                	mov    %esi,%eax
45309c:	e8 0f f9 ff ff       	call   0x4529b0
4530a1:	84 db                	test   %bl,%bl
4530a3:	7e 07                	jle    0x4530ac
4530a5:	8b c6                	mov    %esi,%eax
4530a7:	e8 c8 05 fb ff       	call   0x403674
4530ac:	5e                   	pop    %esi
4530ad:	5b                   	pop    %ebx
4530ae:	c3                   	ret
4530af:	90                   	nop
4530b0:	53                   	push   %ebx
4530b1:	56                   	push   %esi
4530b2:	57                   	push   %edi
4530b3:	8b f2                	mov    %edx,%esi
4530b5:	8b d8                	mov    %eax,%ebx
4530b7:	8b c6                	mov    %esi,%eax
4530b9:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
4530bf:	e8 88 03 fb ff       	call   0x40344c
4530c4:	84 c0                	test   %al,%al
4530c6:	0f 84 83 00 00 00    	je     0x45314f
4530cc:	8b 53 64             	mov    0x64(%ebx),%edx
4530cf:	8b fe                	mov    %esi,%edi
4530d1:	8b c7                	mov    %edi,%eax
4530d3:	e8 84 00 00 00       	call   0x45315c
4530d8:	8a 53 69             	mov    0x69(%ebx),%dl
4530db:	8b c7                	mov    %edi,%eax
4530dd:	e8 da 00 00 00       	call   0x4531bc
4530e2:	8a 53 6a             	mov    0x6a(%ebx),%dl
4530e5:	8b c7                	mov    %edi,%eax
4530e7:	e8 d8 01 00 00       	call   0x4532c4
4530ec:	8b 53 74             	mov    0x74(%ebx),%edx
4530ef:	8b c7                	mov    %edi,%eax
4530f1:	8b 08                	mov    (%eax),%ecx
4530f3:	ff 51 48             	call   *0x48(%ecx)
4530f6:	8b 53 7c             	mov    0x7c(%ebx),%edx
4530f9:	8b c7                	mov    %edi,%eax
4530fb:	e8 fc 02 00 00       	call   0x4533fc
453100:	8b 93 80 00 00 00    	mov    0x80(%ebx),%edx
453106:	8b c7                	mov    %edi,%eax
453108:	e8 4f 03 00 00       	call   0x45345c
45310d:	66 8b 93 84 00 00 00 	mov    0x84(%ebx),%dx
453114:	8b c7                	mov    %edi,%eax
453116:	e8 9d 03 00 00       	call   0x4534b8
45311b:	8a 93 86 00 00 00    	mov    0x86(%ebx),%dl
453121:	8b c7                	mov    %edi,%eax
453123:	e8 f4 03 00 00       	call   0x45351c
453128:	ff 73 44             	push   0x44(%ebx)
45312b:	ff 73 40             	push   0x40(%ebx)
45312e:	8b c7                	mov    %edi,%eax
453130:	8b 10                	mov    (%eax),%edx
453132:	ff 52 34             	call   *0x34(%edx)
453135:	8b 43 48             	mov    0x48(%ebx),%eax
453138:	89 47 48             	mov    %eax,0x48(%edi)
45313b:	8b 43 4c             	mov    0x4c(%ebx),%eax
45313e:	89 47 4c             	mov    %eax,0x4c(%edi)
453141:	8b 43 38             	mov    0x38(%ebx),%eax
453144:	89 47 38             	mov    %eax,0x38(%edi)
453147:	8b 43 3c             	mov    0x3c(%ebx),%eax
45314a:	89 47 3c             	mov    %eax,0x3c(%edi)
45314d:	eb 09                	jmp    0x453158
45314f:	8b d6                	mov    %esi,%edx
453151:	8b c3                	mov    %ebx,%eax
453153:	e8 24 5d fc ff       	call   0x418e7c
453158:	5f                   	pop    %edi
453159:	5e                   	pop    %esi
45315a:	5b                   	pop    %ebx
45315b:	c3                   	ret
45315c:	53                   	push   %ebx
45315d:	56                   	push   %esi
45315e:	57                   	push   %edi
45315f:	51                   	push   %ecx
453160:	89 14 24             	mov    %edx,(%esp)
453163:	8b d8                	mov    %eax,%ebx
453165:	8b 04 24             	mov    (%esp),%eax
453168:	8b 53 64             	mov    0x64(%ebx),%edx
45316b:	e8 ec 12 fb ff       	call   0x40445c
453170:	74 44                	je     0x4531b6
453172:	8b 43 50             	mov    0x50(%ebx),%eax
453175:	8b 70 08             	mov    0x8(%eax),%esi
453178:	4e                   	dec    %esi
453179:	85 f6                	test   %esi,%esi
45317b:	7c 27                	jl     0x4531a4
45317d:	46                   	inc    %esi
45317e:	33 ff                	xor    %edi,%edi
453180:	8b 43 50             	mov    0x50(%ebx),%eax
453183:	8b 40 04             	mov    0x4(%eax),%eax
453186:	8b 04 b8             	mov    (%eax,%edi,4),%eax
453189:	8b 15 e0 28 45 00    	mov    0x4528e0,%edx
45318f:	e8 dc 02 fb ff       	call   0x403470
453194:	85 c0                	test   %eax,%eax
453196:	74 08                	je     0x4531a0
453198:	8b 14 24             	mov    (%esp),%edx
45319b:	8b 08                	mov    (%eax),%ecx
45319d:	ff 51 4c             	call   *0x4c(%ecx)
4531a0:	47                   	inc    %edi
4531a1:	4e                   	dec    %esi
4531a2:	75 dc                	jne    0x453180
4531a4:	8d 43 64             	lea    0x64(%ebx),%eax
4531a7:	8b 14 24             	mov    (%esp),%edx
4531aa:	e8 f5 0e fb ff       	call   0x4040a4
4531af:	8b c3                	mov    %ebx,%eax
4531b1:	8b 10                	mov    (%eax),%edx
4531b3:	ff 52 30             	call   *0x30(%edx)
4531b6:	5a                   	pop    %edx
4531b7:	5f                   	pop    %edi
4531b8:	5e                   	pop    %esi
4531b9:	5b                   	pop    %ebx
4531ba:	c3                   	ret
4531bb:	90                   	nop
4531bc:	55                   	push   %ebp
4531bd:	8b ec                	mov    %esp,%ebp
4531bf:	51                   	push   %ecx
4531c0:	53                   	push   %ebx
4531c1:	56                   	push   %esi
4531c2:	57                   	push   %edi
4531c3:	8b da                	mov    %edx,%ebx
4531c5:	89 45 fc             	mov    %eax,-0x4(%ebp)
4531c8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4531cb:	80 78 68 00          	cmpb   $0x0,0x68(%eax)
4531cf:	0f 85 e6 00 00 00    	jne    0x4532bb
4531d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4531d8:	c6 40 68 01          	movb   $0x1,0x68(%eax)
4531dc:	33 d2                	xor    %edx,%edx
4531de:	55                   	push   %ebp
4531df:	68 b4 32 45 00       	push   $0x4532b4
4531e4:	64 ff 32             	push   %fs:(%edx)
4531e7:	64 89 22             	mov    %esp,%fs:(%edx)
4531ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
4531ed:	3a 58 69             	cmp    0x69(%eax),%bl
4531f0:	0f 84 a9 00 00 00    	je     0x45329f
4531f6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4531f9:	8b 40 50             	mov    0x50(%eax),%eax
4531fc:	8b 78 08             	mov    0x8(%eax),%edi
4531ff:	4f                   	dec    %edi
453200:	85 ff                	test   %edi,%edi
453202:	7c 29                	jl     0x45322d
453204:	47                   	inc    %edi
453205:	33 f6                	xor    %esi,%esi
453207:	8b 45 fc             	mov    -0x4(%ebp),%eax
45320a:	8b 40 50             	mov    0x50(%eax),%eax
45320d:	8b 40 04             	mov    0x4(%eax),%eax
453210:	8b 04 b0             	mov    (%eax,%esi,4),%eax
453213:	8b 15 e0 28 45 00    	mov    0x4528e0,%edx
453219:	e8 52 02 fb ff       	call   0x403470
45321e:	85 c0                	test   %eax,%eax
453220:	74 07                	je     0x453229
453222:	8b d3                	mov    %ebx,%edx
453224:	8b 08                	mov    (%eax),%ecx
453226:	ff 51 50             	call   *0x50(%ecx)
453229:	46                   	inc    %esi
45322a:	4f                   	dec    %edi
45322b:	75 da                	jne    0x453207
45322d:	8b 45 fc             	mov    -0x4(%ebp),%eax
453230:	88 58 69             	mov    %bl,0x69(%eax)
453233:	8b 45 fc             	mov    -0x4(%ebp),%eax
453236:	83 78 6c 00          	cmpl   $0x0,0x6c(%eax)
45323a:	7e 5b                	jle    0x453297
45323c:	8b 45 fc             	mov    -0x4(%ebp),%eax
45323f:	80 78 69 00          	cmpb   $0x0,0x69(%eax)
453243:	74 52                	je     0x453297
453245:	8b 45 fc             	mov    -0x4(%ebp),%eax
453248:	8b 40 5c             	mov    0x5c(%eax),%eax
45324b:	e8 c4 fa ff ff       	call   0x452d14
453250:	8b f8                	mov    %eax,%edi
453252:	4f                   	dec    %edi
453253:	85 ff                	test   %edi,%edi
453255:	7c 40                	jl     0x453297
453257:	47                   	inc    %edi
453258:	33 f6                	xor    %esi,%esi
45325a:	8b 45 fc             	mov    -0x4(%ebp),%eax
45325d:	8b 40 5c             	mov    0x5c(%eax),%eax
453260:	8b d6                	mov    %esi,%edx
453262:	e8 99 fa ff ff       	call   0x452d00
453267:	8b d8                	mov    %eax,%ebx
453269:	3b 5d fc             	cmp    -0x4(%ebp),%ebx
45326c:	74 25                	je     0x453293
45326e:	8b c3                	mov    %ebx,%eax
453270:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
453276:	e8 d1 01 fb ff       	call   0x40344c
45327b:	84 c0                	test   %al,%al
45327d:	74 14                	je     0x453293
45327f:	8b 43 6c             	mov    0x6c(%ebx),%eax
453282:	8b 55 fc             	mov    -0x4(%ebp),%edx
453285:	3b 42 6c             	cmp    0x6c(%edx),%eax
453288:	75 09                	jne    0x453293
45328a:	33 d2                	xor    %edx,%edx
45328c:	8b c3                	mov    %ebx,%eax
45328e:	e8 29 ff ff ff       	call   0x4531bc
453293:	46                   	inc    %esi
453294:	4f                   	dec    %edi
453295:	75 c3                	jne    0x45325a
453297:	8b 45 fc             	mov    -0x4(%ebp),%eax
45329a:	8b 10                	mov    (%eax),%edx
45329c:	ff 52 30             	call   *0x30(%edx)
45329f:	33 c0                	xor    %eax,%eax
4532a1:	5a                   	pop    %edx
4532a2:	59                   	pop    %ecx
4532a3:	59                   	pop    %ecx
4532a4:	64 89 10             	mov    %edx,%fs:(%eax)
4532a7:	68 bb 32 45 00       	push   $0x4532bb
4532ac:	8b 45 fc             	mov    -0x4(%ebp),%eax
4532af:	c6 40 68 00          	movb   $0x0,0x68(%eax)
4532b3:	c3                   	ret
4532b4:	e9 9b 07 fb ff       	jmp    0x403a54
4532b9:	eb f1                	jmp    0x4532ac
4532bb:	5f                   	pop    %edi
4532bc:	5e                   	pop    %esi
4532bd:	5b                   	pop    %ebx
4532be:	59                   	pop    %ecx
4532bf:	5d                   	pop    %ebp
4532c0:	c3                   	ret
4532c1:	8d 40 00             	lea    0x0(%eax),%eax
4532c4:	53                   	push   %ebx
4532c5:	56                   	push   %esi
4532c6:	57                   	push   %edi
4532c7:	51                   	push   %ecx
4532c8:	88 14 24             	mov    %dl,(%esp)
4532cb:	8b d8                	mov    %eax,%ebx
4532cd:	8a 04 24             	mov    (%esp),%al
4532d0:	3a 43 6a             	cmp    0x6a(%ebx),%al
4532d3:	74 5f                	je     0x453334
4532d5:	8b 43 5c             	mov    0x5c(%ebx),%eax
4532d8:	85 c0                	test   %eax,%eax
4532da:	74 19                	je     0x4532f5
4532dc:	8a 50 58             	mov    0x58(%eax),%dl
4532df:	80 fa 01             	cmp    $0x1,%dl
4532e2:	75 08                	jne    0x4532ec
4532e4:	8a 04 24             	mov    (%esp),%al