408ea4:	08 00 00
408ea7:	75 0a                	jne    0x408eb3
408ea9:	81 8d f0 fd ff ff 00 	orl    $0x800,-0x210(%ebp)
408eb0:	08 00 00
408eb3:	8b 8d e8 fd ff ff    	mov    -0x218(%ebp),%ecx
408eb9:	83 f9 ff             	cmp    $0xffffffff,%ecx
408ebc:	75 05                	jne    0x408ec3
408ebe:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
408ec3:	83 c7 04             	add    $0x4,%edi
408ec6:	f7 85 f0 fd ff ff 10 	testl  $0x810,-0x210(%ebp)
408ecd:	08 00 00
408ed0:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
408ed6:	8b 7f fc             	mov    -0x4(%edi),%edi
408ed9:	89 bd e4 fd ff ff    	mov    %edi,-0x21c(%ebp)
408edf:	0f 84 b1 04 00 00    	je     0x409396
408ee5:	3b fe                	cmp    %esi,%edi
408ee7:	75 0b                	jne    0x408ef4
408ee9:	a1 84 b2 42 00       	mov    0x42b284,%eax
408eee:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
408ef4:	8b 85 e4 fd ff ff    	mov    -0x21c(%ebp),%eax
408efa:	c7 85 c8 fd ff ff 01 	movl   $0x1,-0x238(%ebp)
408f01:	00 00 00
408f04:	e9 7f 04 00 00       	jmp    0x409388
408f09:	83 e8 58             	sub    $0x58,%eax
408f0c:	0f 84 da 02 00 00    	je     0x4091ec
408f12:	48                   	dec    %eax
408f13:	48                   	dec    %eax
408f14:	74 79                	je     0x408f8f
408f16:	2b c1                	sub    %ecx,%eax
408f18:	0f 84 27 ff ff ff    	je     0x408e45
408f1e:	48                   	dec    %eax
408f1f:	48                   	dec    %eax
408f20:	0f 85 9e 04 00 00    	jne    0x4093c4
408f26:	83 c7 04             	add    $0x4,%edi
408f29:	f7 85 f0 fd ff ff 10 	testl  $0x810,-0x210(%ebp)
408f30:	08 00 00
408f33:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
408f39:	74 30                	je     0x408f6b
408f3b:	0f b7 47 fc          	movzwl -0x4(%edi),%eax
408f3f:	50                   	push   %eax
408f40:	68 00 02 00 00       	push   $0x200
408f45:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
408f4b:	50                   	push   %eax
408f4c:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
408f52:	50                   	push   %eax
408f53:	e8 33 9e 00 00       	call   0x412d8b
408f58:	83 c4 10             	add    $0x10,%esp
408f5b:	85 c0                	test   %eax,%eax
408f5d:	74 1f                	je     0x408f7e
408f5f:	c7 85 c0 fd ff ff 01 	movl   $0x1,-0x240(%ebp)
408f66:	00 00 00
408f69:	eb 13                	jmp    0x408f7e
408f6b:	8a 47 fc             	mov    -0x4(%edi),%al
408f6e:	88 85 f4 fd ff ff    	mov    %al,-0x20c(%ebp)
408f74:	c7 85 e0 fd ff ff 01 	movl   $0x1,-0x220(%ebp)
408f7b:	00 00 00
408f7e:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
408f84:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
408f8a:	e9 35 04 00 00       	jmp    0x4093c4
408f8f:	8b 07                	mov    (%edi),%eax
408f91:	83 c7 04             	add    $0x4,%edi
408f94:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
408f9a:	3b c6                	cmp    %esi,%eax
408f9c:	74 3b                	je     0x408fd9
408f9e:	8b 48 04             	mov    0x4(%eax),%ecx
408fa1:	3b ce                	cmp    %esi,%ecx
408fa3:	74 34                	je     0x408fd9
408fa5:	f7 85 f0 fd ff ff 00 	testl  $0x800,-0x210(%ebp)
408fac:	08 00 00
408faf:	0f bf 00             	movswl (%eax),%eax
408fb2:	89 8d e4 fd ff ff    	mov    %ecx,-0x21c(%ebp)
408fb8:	74 14                	je     0x408fce
408fba:	99                   	cltd
408fbb:	2b c2                	sub    %edx,%eax
408fbd:	d1 f8                	sar    $1,%eax
408fbf:	c7 85 c8 fd ff ff 01 	movl   $0x1,-0x238(%ebp)
408fc6:	00 00 00
408fc9:	e9 f0 03 00 00       	jmp    0x4093be
408fce:	89 b5 c8 fd ff ff    	mov    %esi,-0x238(%ebp)
408fd4:	e9 e5 03 00 00       	jmp    0x4093be
408fd9:	a1 80 b2 42 00       	mov    0x42b280,%eax
408fde:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
408fe4:	50                   	push   %eax
408fe5:	e8 76 cf ff ff       	call   0x405f60
408fea:	59                   	pop    %ecx
408feb:	e9 ce 03 00 00       	jmp    0x4093be
408ff0:	83 f8 70             	cmp    $0x70,%eax
408ff3:	0f 8f fb 01 00 00    	jg     0x4091f4
408ff9:	0f 84 e3 01 00 00    	je     0x4091e2
408fff:	83 f8 65             	cmp    $0x65,%eax
409002:	0f 8c bc 03 00 00    	jl     0x4093c4
409008:	83 f8 67             	cmp    $0x67,%eax
40900b:	0f 8e 34 fe ff ff    	jle    0x408e45
409011:	83 f8 69             	cmp    $0x69,%eax
409014:	74 71                	je     0x409087
409016:	83 f8 6e             	cmp    $0x6e,%eax
409019:	74 28                	je     0x409043
40901b:	83 f8 6f             	cmp    $0x6f,%eax
40901e:	0f 85 a0 03 00 00    	jne    0x4093c4
409024:	f6 85 f0 fd ff ff 80 	testb  $0x80,-0x210(%ebp)
40902b:	c7 85 e0 fd ff ff 08 	movl   $0x8,-0x220(%ebp)
409032:	00 00 00
409035:	74 61                	je     0x409098
409037:	81 8d f0 fd ff ff 00 	orl    $0x200,-0x210(%ebp)
40903e:	02 00 00
409041:	eb 55                	jmp    0x409098
409043:	8b 37                	mov    (%edi),%esi
409045:	83 c7 04             	add    $0x4,%edi
409048:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
40904e:	e8 b6 9b 00 00       	call   0x412c09
409053:	85 c0                	test   %eax,%eax
409055:	0f 84 2f fa ff ff    	je     0x408a8a
40905b:	f6 85 f0 fd ff ff 20 	testb  $0x20,-0x210(%ebp)
409062:	74 0c                	je     0x409070
409064:	66 8b 85 d8 fd ff ff 	mov    -0x228(%ebp),%ax
40906b:	66 89 06             	mov    %ax,(%esi)
40906e:	eb 08                	jmp    0x409078
409070:	8b 85 d8 fd ff ff    	mov    -0x228(%ebp),%eax
409076:	89 06                	mov    %eax,(%esi)
409078:	c7 85 c0 fd ff ff 01 	movl   $0x1,-0x240(%ebp)
40907f:	00 00 00
409082:	e9 a6 04 00 00       	jmp    0x40952d
409087:	83 8d f0 fd ff ff 40 	orl    $0x40,-0x210(%ebp)
40908e:	c7 85 e0 fd ff ff 0a 	movl   $0xa,-0x220(%ebp)
409095:	00 00 00
409098:	8b 8d f0 fd ff ff    	mov    -0x210(%ebp),%ecx
40909e:	f7 c1 00 80 00 00    	test   $0x8000,%ecx
4090a4:	0f 84 a9 01 00 00    	je     0x409253
4090aa:	8b 07                	mov    (%edi),%eax
4090ac:	8b 57 04             	mov    0x4(%edi),%edx
4090af:	83 c7 08             	add    $0x8,%edi
4090b2:	e9 d5 01 00 00       	jmp    0x40928c
4090b7:	75 11                	jne    0x4090ca
4090b9:	80 fa 67             	cmp    $0x67,%dl
4090bc:	75 65                	jne    0x409123
4090be:	c7 85 e8 fd ff ff 01 	movl   $0x1,-0x218(%ebp)
4090c5:	00 00 00
4090c8:	eb 59                	jmp    0x409123
4090ca:	39 85 e8 fd ff ff    	cmp    %eax,-0x218(%ebp)
4090d0:	7e 06                	jle    0x4090d8
4090d2:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
4090d8:	81 bd e8 fd ff ff a3 	cmpl   $0xa3,-0x218(%ebp)
4090df:	00 00 00
4090e2:	7e 3f                	jle    0x409123
4090e4:	8b b5 e8 fd ff ff    	mov    -0x218(%ebp),%esi
4090ea:	81 c6 5d 01 00 00    	add    $0x15d,%esi
4090f0:	56                   	push   %esi
4090f1:	e8 6a ea ff ff       	call   0x407b60
4090f6:	8a 95 ef fd ff ff    	mov    -0x211(%ebp),%dl
4090fc:	59                   	pop    %ecx
4090fd:	89 85 bc fd ff ff    	mov    %eax,-0x244(%ebp)
409103:	85 c0                	test   %eax,%eax
409105:	74 10                	je     0x409117
409107:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
40910d:	89 b5 a0 fd ff ff    	mov    %esi,-0x260(%ebp)
409113:	8b d8                	mov    %eax,%ebx
409115:	eb 0a                	jmp    0x409121
409117:	c7 85 e8 fd ff ff a3 	movl   $0xa3,-0x218(%ebp)
40911e:	00 00 00
409121:	33 f6                	xor    %esi,%esi
409123:	8b 07                	mov    (%edi),%eax
409125:	83 c7 08             	add    $0x8,%edi
409128:	89 85 88 fd ff ff    	mov    %eax,-0x278(%ebp)
40912e:	8b 47 fc             	mov    -0x4(%edi),%eax
409131:	89 85 8c fd ff ff    	mov    %eax,-0x274(%ebp)
409137:	8d 85 a4 fd ff ff    	lea    -0x25c(%ebp),%eax
40913d:	50                   	push   %eax
40913e:	ff b5 90 fd ff ff    	push   -0x270(%ebp)
409144:	0f be c2             	movsbl %dl,%eax
409147:	ff b5 e8 fd ff ff    	push   -0x218(%ebp)
40914d:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
409153:	50                   	push   %eax
409154:	ff b5 a0 fd ff ff    	push   -0x260(%ebp)
40915a:	8d 85 88 fd ff ff    	lea    -0x278(%ebp),%eax
409160:	53                   	push   %ebx
409161:	50                   	push   %eax
409162:	ff 35 f8 be 42 00    	push   0x42bef8
409168:	e8 88 16 00 00       	call   0x40a7f5
40916d:	59                   	pop    %ecx
40916e:	ff d0                	call   *%eax
409170:	8b bd f0 fd ff ff    	mov    -0x210(%ebp),%edi
409176:	83 c4 1c             	add    $0x1c,%esp
409179:	81 e7 80 00 00 00    	and    $0x80,%edi
40917f:	74 20                	je     0x4091a1
409181:	39 b5 e8 fd ff ff    	cmp    %esi,-0x218(%ebp)
409187:	75 18                	jne    0x4091a1
409189:	8d 85 a4 fd ff ff    	lea    -0x25c(%ebp),%eax
40918f:	50                   	push   %eax
409190:	53                   	push   %ebx
409191:	ff 35 04 bf 42 00    	push   0x42bf04
409197:	e8 59 16 00 00       	call   0x40a7f5
40919c:	59                   	pop    %ecx
40919d:	ff d0                	call   *%eax
40919f:	59                   	pop    %ecx
4091a0:	59                   	pop    %ecx
4091a1:	80 bd ef fd ff ff 67 	cmpb   $0x67,-0x211(%ebp)
4091a8:	75 1c                	jne    0x4091c6
4091aa:	3b fe                	cmp    %esi,%edi
4091ac:	75 18                	jne    0x4091c6
4091ae:	8d 85 a4 fd ff ff    	lea    -0x25c(%ebp),%eax
4091b4:	50                   	push   %eax
4091b5:	53                   	push   %ebx
4091b6:	ff 35 00 bf 42 00    	push   0x42bf00
4091bc:	e8 34 16 00 00       	call   0x40a7f5
4091c1:	59                   	pop    %ecx
4091c2:	ff d0                	call   *%eax
4091c4:	59                   	pop    %ecx
4091c5:	59                   	pop    %ecx
4091c6:	80 3b 2d             	cmpb   $0x2d,(%ebx)
4091c9:	75 11                	jne    0x4091dc
4091cb:	81 8d f0 fd ff ff 00 	orl    $0x100,-0x210(%ebp)
4091d2:	01 00 00
4091d5:	43                   	inc    %ebx
4091d6:	89 9d e4 fd ff ff    	mov    %ebx,-0x21c(%ebp)
4091dc:	53                   	push   %ebx
4091dd:	e9 03 fe ff ff       	jmp    0x408fe5
4091e2:	c7 85 e8 fd ff ff 08 	movl   $0x8,-0x218(%ebp)
4091e9:	00 00 00
4091ec:	89 8d b8 fd ff ff    	mov    %ecx,-0x248(%ebp)
4091f2:	eb 24                	jmp    0x409218
4091f4:	83 e8 73             	sub    $0x73,%eax
4091f7:	0f 84 b6 fc ff ff    	je     0x408eb3
4091fd:	48                   	dec    %eax
4091fe:	48                   	dec    %eax
4091ff:	0f 84 89 fe ff ff    	je     0x40908e
409205:	83 e8 03             	sub    $0x3,%eax
409208:	0f 85 b6 01 00 00    	jne    0x4093c4
40920e:	c7 85 b8 fd ff ff 27 	movl   $0x27,-0x248(%ebp)
409215:	00 00 00
409218:	f6 85 f0 fd ff ff 80 	testb  $0x80,-0x210(%ebp)
40921f:	c7 85 e0 fd ff ff 10 	movl   $0x10,-0x220(%ebp)
409226:	00 00 00
409229:	0f 84 69 fe ff ff    	je     0x409098
40922f:	8a 85 b8 fd ff ff    	mov    -0x248(%ebp),%al
409235:	04 51                	add    $0x51,%al
409237:	c6 85 d4 fd ff ff 30 	movb   $0x30,-0x22c(%ebp)
40923e:	88 85 d5 fd ff ff    	mov    %al,-0x22b(%ebp)
409244:	c7 85 d0 fd ff ff 02 	movl   $0x2,-0x230(%ebp)
40924b:	00 00 00
40924e:	e9 45 fe ff ff       	jmp    0x409098
409253:	f7 c1 00 10 00 00    	test   $0x1000,%ecx
409259:	0f 85 4b fe ff ff    	jne    0x4090aa
40925f:	83 c7 04             	add    $0x4,%edi
409262:	f6 c1 20             	test   $0x20,%cl
409265:	74 18                	je     0x40927f
409267:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
40926d:	f6 c1 40             	test   $0x40,%cl
409270:	74 06                	je     0x409278
409272:	0f bf 47 fc          	movswl -0x4(%edi),%eax
409276:	eb 04                	jmp    0x40927c
409278:	0f b7 47 fc          	movzwl -0x4(%edi),%eax
40927c:	99                   	cltd
40927d:	eb 13                	jmp    0x409292
40927f:	8b 47 fc             	mov    -0x4(%edi),%eax
409282:	f6 c1 40             	test   $0x40,%cl
409285:	74 03                	je     0x40928a
409287:	99                   	cltd
409288:	eb 02                	jmp    0x40928c
40928a:	33 d2                	xor    %edx,%edx
40928c:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
409292:	f6 c1 40             	test   $0x40,%cl
409295:	74 1b                	je     0x4092b2
409297:	3b d6                	cmp    %esi,%edx
409299:	7f 17                	jg     0x4092b2
40929b:	7c 04                	jl     0x4092a1
40929d:	3b c6                	cmp    %esi,%eax
40929f:	73 11                	jae    0x4092b2
4092a1:	f7 d8                	neg    %eax
4092a3:	83 d2 00             	adc    $0x0,%edx
4092a6:	f7 da                	neg    %edx
4092a8:	81 8d f0 fd ff ff 00 	orl    $0x100,-0x210(%ebp)
4092af:	01 00 00
4092b2:	f7 85 f0 fd ff ff 00 	testl  $0x9000,-0x210(%ebp)
4092b9:	90 00 00
4092bc:	8b da                	mov    %edx,%ebx
4092be:	8b f8                	mov    %eax,%edi
4092c0:	75 02                	jne    0x4092c4
4092c2:	33 db                	xor    %ebx,%ebx
4092c4:	83 bd e8 fd ff ff 00 	cmpl   $0x0,-0x218(%ebp)
4092cb:	7d 0c                	jge    0x4092d9
4092cd:	c7 85 e8 fd ff ff 01 	movl   $0x1,-0x218(%ebp)
4092d4:	00 00 00
4092d7:	eb 1a                	jmp    0x4092f3
4092d9:	83 a5 f0 fd ff ff f7 	andl   $0xfffffff7,-0x210(%ebp)
4092e0:	b8 00 02 00 00       	mov    $0x200,%eax
4092e5:	39 85 e8 fd ff ff    	cmp    %eax,-0x218(%ebp)
4092eb:	7e 06                	jle    0x4092f3
4092ed:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
4092f3:	8b c7                	mov    %edi,%eax
4092f5:	0b c3                	or     %ebx,%eax
4092f7:	75 06                	jne    0x4092ff
4092f9:	21 85 d0 fd ff ff    	and    %eax,-0x230(%ebp)
4092ff:	8d 75 f3             	lea    -0xd(%ebp),%esi
409302:	8b 85 e8 fd ff ff    	mov    -0x218(%ebp),%eax
409308:	ff 8d e8 fd ff ff    	decl   -0x218(%ebp)
40930e:	85 c0                	test   %eax,%eax
409310:	7f 06                	jg     0x409318
409312:	8b c7                	mov    %edi,%eax
409314:	0b c3                	or     %ebx,%eax
409316:	74 2d                	je     0x409345
409318:	8b 85 e0 fd ff ff    	mov    -0x220(%ebp),%eax
40931e:	99                   	cltd
40931f:	52                   	push   %edx
409320:	50                   	push   %eax
409321:	53                   	push   %ebx
409322:	57                   	push   %edi
409323:	e8 68 87 00 00       	call   0x411a90
409328:	83 c1 30             	add    $0x30,%ecx
40932b:	83 f9 39             	cmp    $0x39,%ecx
40932e:	89 9d a0 fd ff ff    	mov    %ebx,-0x260(%ebp)
409334:	8b f8                	mov    %eax,%edi
409336:	8b da                	mov    %edx,%ebx
409338:	7e 06                	jle    0x409340
40933a:	03 8d b8 fd ff ff    	add    -0x248(%ebp),%ecx
409340:	88 0e                	mov    %cl,(%esi)
409342:	4e                   	dec    %esi
409343:	eb bd                	jmp    0x409302
409345:	8d 45 f3             	lea    -0xd(%ebp),%eax
409348:	2b c6                	sub    %esi,%eax
40934a:	46                   	inc    %esi
40934b:	f7 85 f0 fd ff ff 00 	testl  $0x200,-0x210(%ebp)
409352:	02 00 00
409355:	89 85 e0 fd ff ff    	mov    %eax,-0x220(%ebp)
40935b:	89 b5 e4 fd ff ff    	mov    %esi,-0x21c(%ebp)
409361:	74 61                	je     0x4093c4
409363:	85 c0                	test   %eax,%eax
409365:	74 07                	je     0x40936e
409367:	8b ce                	mov    %esi,%ecx
409369:	80 39 30             	cmpb   $0x30,(%ecx)
40936c:	74 56                	je     0x4093c4
40936e:	ff 8d e4 fd ff ff    	decl   -0x21c(%ebp)
409374:	8b 8d e4 fd ff ff    	mov    -0x21c(%ebp),%ecx
40937a:	c6 01 30             	movb   $0x30,(%ecx)
40937d:	40                   	inc    %eax
40937e:	eb 3e                	jmp    0x4093be
409380:	49                   	dec    %ecx
409381:	66 39 30             	cmp    %si,(%eax)
409384:	74 06                	je     0x40938c
409386:	40                   	inc    %eax
409387:	40                   	inc    %eax
409388:	3b ce                	cmp    %esi,%ecx
40938a:	75 f4                	jne    0x409380
40938c:	2b 85 e4 fd ff ff    	sub    -0x21c(%ebp),%eax
409392:	d1 f8                	sar    $1,%eax
409394:	eb 28                	jmp    0x4093be
409396:	3b fe                	cmp    %esi,%edi
409398:	75 0b                	jne    0x4093a5
40939a:	a1 80 b2 42 00       	mov    0x42b280,%eax
40939f:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
4093a5:	8b 85 e4 fd ff ff    	mov    -0x21c(%ebp),%eax